<?xml version='1.0' encoding='utf-8'?>
<?xml-stylesheet type='text/xsl' href='http://www2.osgi.org/www/obr2html.xsl'?>
<!--
   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

     https://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.    
-->
<repository name='OBR/Releases' lastmodified='1253581430652'>
<resource id='org.apache.xbean.xbean-server/3.3.0' presentationname='xbean-server' symbolicname='org.apache.xbean.xbean-server' uri='../org/apache/xbean/xbean-server/3.3/xbean-server-3.3.jar' version='3.3.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    291022
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-server'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-server'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2c'/>
    <p n='uses' v='org.springframework.beans.factory.parsing,org.w3c.dom,org.apache.commons.logging,org.springframework.context.support,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,org.springframework.beans.factory,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classloader'/>
    <p n='uses' v='org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.server.repository'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.kernel'/>
    <p n='uses' v='org.apache.xbean.kernel.standard'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.springframework.context,org.springframework.context.support,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.beans.factory,org.apache.xbean.spring.context.impl,org.springframework.web.context.support'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2'/>
    <p n='uses' v='org.springframework.util.xml,org.springframework.core.io.support,org.xml.sax,org.springframework.beans.factory.parsing,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.core.io,org.springframework.beans,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.server.spring.jmx'/>
    <p n='uses' v='javax.management,org.springframework.jmx.support,org.apache.commons.logging,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.server.main'/>
    <p n='uses' v='org.apache.xbean.kernel'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.jndi'/>
    <p n='uses' v='javax.naming,org.springframework.core.io,org.apache.commons.logging,org.springframework.beans.factory,org.apache.xbean.spring.context.impl,javax.naming.spi'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.server.loader'/>
    <p n='uses' v='org.apache.xbean.server.main,org.apache.xbean.kernel'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.server.spring.reference'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.apache.xbean.kernel,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.generator'/>
    <p n='uses' v='com.thoughtworks.qdox.model,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.commons.logging,com.thoughtworks.qdox,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.util'/>
    <p n='uses' v='org.springframework.beans.factory.config,org.springframework.beans'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.rmi'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.server.spring.loader'/>
    <p n='uses' v='org.apache.xbean.server.loader,org.springframework.beans.factory.config,org.apache.xbean.kernel,org.apache.xbean.spring.context,org.apache.xbean.server.spring.configuration,org.springframework.context.support'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.server.spring.main'/>
    <p n='uses' v='org.apache.xbean.server.main,org.apache.xbean.spring.context'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.server.deployer'/>
    <p n='uses' v='org.apache.xbean.classloader,org.apache.commons.logging,org.apache.xbean.spring.context,org.apache.xbean.kernel,org.springframework.context,org.springframework.context.support,org.springframework.core.io,org.springframework.beans,org.apache.xbean.server.spring.configuration,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.server.propertyeditor'/>
    <p n='uses' v='javax.management'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.server.spring.configuration'/>
    <p n='uses' v='org.apache.xbean.classloader,org.w3c.dom,org.apache.xbean.server.repository,org.apache.xbean.spring.context,org.apache.xbean.kernel,org.springframework.context.support,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.xbean.server.spring.loader,org.springframework.beans'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.impl'/>
    <p n='uses' v='javax.management,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.kernel.standard'/>
    <p n='uses' v='org.apache.xbean.kernel'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.qdox
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.qdox.model
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classloader)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classloader ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.kernel)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.kernel ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.kernel.standard)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.kernel.standard ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.rmi)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.rmi ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.server.deployer)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.server.deployer ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.server.loader)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.server.loader ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.server.main)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.server.main ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.server.propertyeditor)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.server.propertyeditor ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.server.repository)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.server.repository ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.server.spring.configuration)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.server.spring.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.server.spring.jmx)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.server.spring.jmx ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.server.spring.loader)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.server.spring.loader ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.server.spring.main)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.server.spring.main ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.server.spring.reference)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.server.spring.reference ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.impl)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.impl ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2c)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2c ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.generator)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.generator ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.jndi)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.jndi ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.util)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.util ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.parsing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.parsing
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.web.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.web.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.xbean.xbean-reflect/3.4.1' presentationname='xbean-reflect' symbolicname='org.apache.xbean.xbean-reflect' uri='../org/apache/xbean/xbean-reflect/3.4.1/xbean-reflect-3.4.1.jar' version='3.4.1'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    133830
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-reflect'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-reflect'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.propertyeditor'/>
    <p n='uses' v='javax.management,org.apache.xbean.recipe,org.apache.commons.logging,org.apache.log4j,javax.naming'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.recipe'/>
    <p n='uses' v='org.apache.xbean.propertyeditor,org.objectweb.asm.commons,org.objectweb.asm'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.propertyeditor)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.propertyeditor ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.recipe)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.recipe ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons
  </require>
</resource>
<resource id='org.apache.xbean.xbean-reflect/3.4.0' presentationname='xbean-reflect' symbolicname='org.apache.xbean.xbean-reflect' uri='../org/apache/xbean/xbean-reflect/3.4/xbean-reflect-3.4.jar' version='3.4.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    133826
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-reflect'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-reflect'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.propertyeditor'/>
    <p n='uses' v='javax.management,org.apache.xbean.recipe,org.apache.commons.logging,org.apache.log4j,javax.naming'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.recipe'/>
    <p n='uses' v='org.apache.xbean.propertyeditor,org.objectweb.asm.commons,org.objectweb.asm'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.propertyeditor)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.propertyeditor ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.recipe)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.recipe ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons
  </require>
</resource>
<resource id='org.apache.xbean.xbean-reflect/3.3.0' presentationname='xbean-reflect' symbolicname='org.apache.xbean.xbean-reflect' uri='../org/apache/xbean/xbean-reflect/3.3/xbean-reflect-3.3.jar' version='3.3.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    81179
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-reflect'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-reflect'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.propertyeditor'/>
    <p n='uses' v='javax.management'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.recipe'/>
    <p n='uses' v='org.apache.xbean.propertyeditor'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.propertyeditor)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.propertyeditor ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.recipe)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.recipe ;version=3.3.0
  </require>
</resource>
<resource id='org.apache.xbean.xbean-reflect/3.4.2' presentationname='xbean-reflect' symbolicname='org.apache.xbean.xbean-reflect' uri='../org/apache/xbean/xbean-reflect/3.4.2/xbean-reflect-3.4.2.jar' version='3.4.2'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    133832
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-reflect'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-reflect'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.propertyeditor'/>
    <p n='uses' v='javax.management,org.apache.xbean.recipe,org.apache.commons.logging,org.apache.log4j,javax.naming'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.recipe'/>
    <p n='uses' v='org.apache.xbean.propertyeditor,org.objectweb.asm.commons,org.objectweb.asm'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.propertyeditor)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.propertyeditor ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.recipe)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.recipe ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons
  </require>
</resource>
<resource id='org.apache.xbean.xbean-reflect/3.5.0' presentationname='xbean-reflect' symbolicname='org.apache.xbean.xbean-reflect' uri='../org/apache/xbean/xbean-reflect/3.5/xbean-reflect-3.5.jar' version='3.5.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    133982
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-reflect'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-reflect'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.propertyeditor'/>
    <p n='uses' v='javax.management,org.apache.xbean.recipe,org.apache.commons.logging,org.apache.log4j,javax.naming'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.recipe'/>
    <p n='uses' v='org.apache.xbean.propertyeditor,org.objectweb.asm.commons,org.objectweb.asm'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.propertyeditor)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.propertyeditor ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.recipe)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.recipe ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons
  </require>
</resource>
<resource id='org.apache.xbean.reflect/3.6.0' presentationname='Apache XBean :: Reflect' symbolicname='org.apache.xbean.reflect' uri='../org/apache/xbean/xbean-reflect/3.6/xbean-reflect-3.6.jar' version='3.6.0'>
  <description>
    xbean-reflect provides very flexible ways to creat objects
    
    
    
    
    
    
    
    
    
    
    
     and
     graphs
     of
     objects
     for
     DI
     frameworks
  </description>
  <documentation>
    http://geronimo.apache.org/maven/xbean/3.6/xbean-reflect
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    148080
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache XBean :: Reflect'/>
    <p n='symbolicname' v='org.apache.xbean.reflect'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.propertyeditor'/>
    <p n='uses' v='org.apache.commons.logging,javax.naming,org.apache.log4j,javax.management,org.apache.xbean.recipe'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.recipe'/>
    <p n='uses' v='org.objectweb.asm,org.objectweb.asm.commons,org.apache.xbean.propertyeditor,org.apache.xbean.asm.commons,org.apache.xbean.asm'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.asm)(version&gt;=3.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xbean.asm ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.asm.commons)(version&gt;=3.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xbean.asm.commons ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.propertyeditor)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.propertyeditor ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.recipe)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.recipe ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=3.1.0))' multiple='false' name='package' optional='true'>
    Import package org.objectweb.asm ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=3.1.0))' multiple='false' name='package' optional='true'>
    Import package org.objectweb.asm.commons ;version=3.1.0
  </require>
</resource>
<resource id='org.apache.xbean.xbean-reflect/3.4.3' presentationname='xbean-reflect' symbolicname='org.apache.xbean.xbean-reflect' uri='../org/apache/xbean/xbean-reflect/3.4.3/xbean-reflect-3.4.3.jar' version='3.4.3'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    133830
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-reflect'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-reflect'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.propertyeditor'/>
    <p n='uses' v='javax.management,org.apache.xbean.recipe,org.apache.commons.logging,org.apache.log4j,javax.naming'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.recipe'/>
    <p n='uses' v='org.apache.xbean.propertyeditor,org.objectweb.asm.commons,org.objectweb.asm'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.propertyeditor)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.propertyeditor ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.recipe)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.recipe ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons
  </require>
</resource>
<resource id='org.apache.xbean.xbean-osgi/3.3.0' presentationname='xbean-osgi' symbolicname='org.apache.xbean.xbean-osgi' uri='../org/apache/xbean/xbean-osgi/3.3/xbean-osgi-3.3.jar' version='3.3.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14324
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-osgi'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-osgi'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.osgi'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.osgi)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.osgi ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.xbean.naming/3.6.0' presentationname='Apache XBean :: Naming' symbolicname='org.apache.xbean.naming' uri='../org/apache/xbean/xbean-naming/3.6/xbean-naming-3.6.jar' version='3.6.0'>
  <description>
    xbean-naming implements a flexible non-persistent jndi provider
  </description>
  <documentation>
    http://geronimo.apache.org/maven/xbean/3.6/xbean-naming
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    52407
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache XBean :: Naming'/>
    <p n='symbolicname' v='org.apache.xbean.naming'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.global'/>
    <p n='uses' v='javax.naming,org.apache.xbean.naming.context,javax.naming.spi'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.context'/>
    <p n='uses' v='javax.naming,org.apache.xbean.naming.reference,javax.naming.spi'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.java'/>
    <p n='uses' v='org.apache.xbean.naming.global'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.reference'/>
    <p n='uses' v='javax.naming,org.apache.xbean.naming.context,javax.naming.spi'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.context)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.context ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.global)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.global ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.java)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.java ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.reference)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.reference ;version=3.6.0
  </require>
</resource>
<resource id='org.apache.xbean.xbean-naming/3.4.3' presentationname='xbean-naming' symbolicname='org.apache.xbean.xbean-naming' uri='../org/apache/xbean/xbean-naming/3.4.3/xbean-naming-3.4.3.jar' version='3.4.3'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    49956
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-naming'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-naming'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.global'/>
    <p n='uses' v='javax.naming,org.apache.xbean.naming.context,javax.naming.spi'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.context'/>
    <p n='uses' v='javax.naming,javax.naming.spi,org.apache.xbean.naming.reference'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.java'/>
    <p n='uses' v='org.apache.xbean.naming.global'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.reference'/>
    <p n='uses' v='javax.naming,org.apache.xbean.naming.context,javax.naming.spi'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.context)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.context ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.global)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.global ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.java)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.java ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.reference)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.reference ;version=3.4.3
  </require>
</resource>
<resource id='org.apache.xbean.xbean-naming/3.5.0' presentationname='xbean-naming' symbolicname='org.apache.xbean.xbean-naming' uri='../org/apache/xbean/xbean-naming/3.5/xbean-naming-3.5.jar' version='3.5.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    51495
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-naming'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-naming'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.global'/>
    <p n='uses' v='javax.naming,org.apache.xbean.naming.context,javax.naming.spi'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.context'/>
    <p n='uses' v='javax.naming,javax.naming.spi,org.apache.xbean.naming.reference'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.java'/>
    <p n='uses' v='org.apache.xbean.naming.global'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.reference'/>
    <p n='uses' v='javax.naming,org.apache.xbean.naming.context,javax.naming.spi'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.context)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.context ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.global)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.global ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.java)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.java ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.reference)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.reference ;version=3.5.0
  </require>
</resource>
<resource id='org.apache.xbean.xbean-naming/3.4.1' presentationname='xbean-naming' symbolicname='org.apache.xbean.xbean-naming' uri='../org/apache/xbean/xbean-naming/3.4.1/xbean-naming-3.4.1.jar' version='3.4.1'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    49954
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-naming'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-naming'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.global'/>
    <p n='uses' v='javax.naming,org.apache.xbean.naming.context,javax.naming.spi'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.context'/>
    <p n='uses' v='javax.naming,javax.naming.spi,org.apache.xbean.naming.reference'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.java'/>
    <p n='uses' v='org.apache.xbean.naming.global'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.reference'/>
    <p n='uses' v='javax.naming,org.apache.xbean.naming.context,javax.naming.spi'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.context)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.context ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.global)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.global ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.java)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.java ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.reference)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.reference ;version=3.4.1
  </require>
</resource>
<resource id='org.apache.xbean.xbean-naming/3.4.0' presentationname='xbean-naming' symbolicname='org.apache.xbean.xbean-naming' uri='../org/apache/xbean/xbean-naming/3.4/xbean-naming-3.4.jar' version='3.4.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    49949
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-naming'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-naming'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.global'/>
    <p n='uses' v='javax.naming,org.apache.xbean.naming.context,javax.naming.spi'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.context'/>
    <p n='uses' v='javax.naming,javax.naming.spi,org.apache.xbean.naming.reference'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.java'/>
    <p n='uses' v='org.apache.xbean.naming.global'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.reference'/>
    <p n='uses' v='javax.naming,org.apache.xbean.naming.context,javax.naming.spi'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.context)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.context ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.global)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.global ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.java)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.java ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.reference)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.reference ;version=3.4.0
  </require>
</resource>
<resource id='org.apache.xbean.xbean-naming/3.4.2' presentationname='xbean-naming' symbolicname='org.apache.xbean.xbean-naming' uri='../org/apache/xbean/xbean-naming/3.4.2/xbean-naming-3.4.2.jar' version='3.4.2'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    49956
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-naming'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-naming'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.global'/>
    <p n='uses' v='javax.naming,org.apache.xbean.naming.context,javax.naming.spi'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.context'/>
    <p n='uses' v='javax.naming,javax.naming.spi,org.apache.xbean.naming.reference'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.java'/>
    <p n='uses' v='org.apache.xbean.naming.global'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.reference'/>
    <p n='uses' v='javax.naming,org.apache.xbean.naming.context,javax.naming.spi'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.context)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.context ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.global)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.global ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.java)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.java ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.reference)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.reference ;version=3.4.2
  </require>
</resource>
<resource id='org.apache.xbean.xbean-naming/3.3.0' presentationname='xbean-naming' symbolicname='org.apache.xbean.xbean-naming' uri='../org/apache/xbean/xbean-naming/3.3/xbean-naming-3.3.jar' version='3.3.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    49762
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-naming'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-naming'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.global'/>
    <p n='uses' v='javax.naming,org.apache.xbean.naming.context,javax.naming.spi'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.context'/>
    <p n='uses' v='javax.naming,javax.naming.spi,org.apache.xbean.naming.reference'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.java'/>
    <p n='uses' v='org.apache.xbean.naming.global'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.naming.reference'/>
    <p n='uses' v='javax.naming,org.apache.xbean.naming.context,javax.naming.spi'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.context)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.context ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.global)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.global ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.java)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.java ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.reference)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.reference ;version=3.3.0
  </require>
</resource>
<resource id='org.apache.xbean.xbean-spring/3.3.0' presentationname='xbean-spring' symbolicname='org.apache.xbean.xbean-spring' uri='../org/apache/xbean/xbean-spring/3.3/xbean-spring-3.3.jar' version='3.3.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    128051
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-spring'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-spring'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.jndi'/>
    <p n='uses' v='javax.naming,org.springframework.core.io,org.apache.commons.logging,org.springframework.beans.factory,org.apache.xbean.spring.context.impl,javax.naming.spi'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.generator'/>
    <p n='uses' v='com.thoughtworks.qdox.model,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.commons.logging,com.thoughtworks.qdox,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.util'/>
    <p n='uses' v='org.springframework.beans.factory.config,org.springframework.beans'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2c'/>
    <p n='uses' v='org.springframework.beans.factory.parsing,org.w3c.dom,org.apache.commons.logging,org.springframework.context.support,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,org.springframework.beans.factory,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2'/>
    <p n='uses' v='org.springframework.util.xml,org.springframework.core.io.support,org.xml.sax,org.springframework.beans.factory.parsing,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.core.io,org.springframework.beans,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.springframework.context,org.springframework.context.support,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.beans.factory,org.apache.xbean.spring.context.impl,org.springframework.web.context.support'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.impl'/>
    <p n='uses' v='javax.management,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.qdox
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.qdox.model
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.impl)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.impl ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2c)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2c ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.generator)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.generator ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.jndi)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.jndi ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.util)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.util ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.parsing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.parsing
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.web.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.web.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.xbean.xbean-spring/3.4.0' presentationname='xbean-spring' symbolicname='org.apache.xbean.xbean-spring' uri='../org/apache/xbean/xbean-spring/3.4/xbean-spring-3.4.jar' version='3.4.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    130203
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-spring'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-spring'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.jndi'/>
    <p n='uses' v='javax.naming,org.springframework.core.io,org.apache.commons.logging,org.springframework.beans.factory,org.apache.xbean.spring.context.impl,javax.naming.spi'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.generator'/>
    <p n='uses' v='com.thoughtworks.qdox.model,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.commons.logging,com.thoughtworks.qdox,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.util'/>
    <p n='uses' v='org.springframework.beans.factory.config,org.springframework.beans'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2c'/>
    <p n='uses' v='javax.management,org.springframework.beans.factory.parsing,org.w3c.dom,org.apache.commons.logging,org.springframework.context.support,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,org.springframework.beans.factory,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2'/>
    <p n='uses' v='org.springframework.util.xml,org.springframework.core.io.support,org.xml.sax,org.springframework.beans.factory.parsing,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.core.io,org.springframework.beans,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.springframework.context,org.springframework.context.support,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.beans.factory,org.apache.xbean.spring.context.impl,org.springframework.web.context.support'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.impl'/>
    <p n='uses' v='javax.management,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.qdox
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.qdox.model
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.impl)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.impl ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2c)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2c ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.generator)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.generator ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.jndi)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.jndi ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.util)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.util ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.parsing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.parsing
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.web.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.web.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.xbean.xbean-spring/3.4.3' presentationname='xbean-spring' symbolicname='org.apache.xbean.xbean-spring' uri='../org/apache/xbean/xbean-spring/3.4.3/xbean-spring-3.4.3.jar' version='3.4.3'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    130304
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-spring'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-spring'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.jndi'/>
    <p n='uses' v='javax.naming,org.springframework.core.io,org.apache.commons.logging,org.springframework.beans.factory,org.apache.xbean.spring.context.impl,javax.naming.spi'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.generator'/>
    <p n='uses' v='com.thoughtworks.qdox.model,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.commons.logging,com.thoughtworks.qdox,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.util'/>
    <p n='uses' v='org.springframework.beans.factory.config,org.springframework.beans'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2c'/>
    <p n='uses' v='javax.management,org.springframework.beans.factory.parsing,org.w3c.dom,org.apache.commons.logging,org.springframework.context.support,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,org.springframework.beans.factory,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2'/>
    <p n='uses' v='org.springframework.util.xml,org.springframework.core.io.support,org.xml.sax,org.springframework.beans.factory.parsing,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.core.io,org.springframework.beans,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.springframework.context,org.springframework.context.support,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.beans.factory,org.apache.xbean.spring.context.impl,org.springframework.web.context.support'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.impl'/>
    <p n='uses' v='javax.management,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.qdox
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.qdox.model
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.impl)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.impl ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2c)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2c ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.generator)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.generator ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.jndi)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.jndi ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.util)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.util ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.parsing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.parsing
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.web.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.web.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.xbean.xbean-spring/3.5.0' presentationname='xbean-spring' symbolicname='org.apache.xbean.xbean-spring' uri='../org/apache/xbean/xbean-spring/3.5/xbean-spring-3.5.jar' version='3.5.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    130195
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-spring'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-spring'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.jndi'/>
    <p n='uses' v='javax.naming,org.springframework.core.io,org.apache.commons.logging,org.springframework.beans.factory,org.apache.xbean.spring.context.impl,javax.naming.spi'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.generator'/>
    <p n='uses' v='com.thoughtworks.qdox.model,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.commons.logging,com.thoughtworks.qdox,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.util'/>
    <p n='uses' v='org.springframework.beans.factory.config,org.springframework.beans'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2c'/>
    <p n='uses' v='javax.management,org.springframework.beans.factory.parsing,org.w3c.dom,org.apache.commons.logging,org.springframework.context.support,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,org.springframework.beans.factory,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2'/>
    <p n='uses' v='org.springframework.util.xml,org.springframework.core.io.support,org.xml.sax,org.springframework.beans.factory.parsing,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.core.io,org.springframework.beans,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.springframework.context,org.springframework.context.support,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.beans.factory,org.apache.xbean.spring.context.impl,org.springframework.web.context.support'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.impl'/>
    <p n='uses' v='javax.management,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.qdox
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.qdox.model
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.impl)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.impl ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2c)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2c ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.generator)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.generator ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.jndi)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.jndi ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.util)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.util ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.parsing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.parsing
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.web.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.web.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.xbean.xbean-spring/3.4.1' presentationname='xbean-spring' symbolicname='org.apache.xbean.xbean-spring' uri='../org/apache/xbean/xbean-spring/3.4.1/xbean-spring-3.4.1.jar' version='3.4.1'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    130187
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-spring'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-spring'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.jndi'/>
    <p n='uses' v='javax.naming,org.springframework.core.io,org.apache.commons.logging,org.springframework.beans.factory,org.apache.xbean.spring.context.impl,javax.naming.spi'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.generator'/>
    <p n='uses' v='com.thoughtworks.qdox.model,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.commons.logging,com.thoughtworks.qdox,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.util'/>
    <p n='uses' v='org.springframework.beans.factory.config,org.springframework.beans'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2c'/>
    <p n='uses' v='javax.management,org.springframework.beans.factory.parsing,org.w3c.dom,org.apache.commons.logging,org.springframework.context.support,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,org.springframework.beans.factory,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2'/>
    <p n='uses' v='org.springframework.util.xml,org.springframework.core.io.support,org.xml.sax,org.springframework.beans.factory.parsing,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.core.io,org.springframework.beans,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.springframework.context,org.springframework.context.support,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.beans.factory,org.apache.xbean.spring.context.impl,org.springframework.web.context.support'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.impl'/>
    <p n='uses' v='javax.management,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.qdox
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.qdox.model
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.impl)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.impl ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2c)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2c ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.generator)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.generator ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.jndi)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.jndi ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.util)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.util ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.parsing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.parsing
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.web.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.web.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.xbean.spring/3.6.0' presentationname='Apache XBean :: Spring' symbolicname='org.apache.xbean.spring' uri='../org/apache/xbean/xbean-spring/3.6/xbean-spring-3.6.jar' version='3.6.0'>
  <description>
    xbean-spring provides a schema-driven proprietary namespace
    
    
    
    
    
    
    
    
    
    
    
     handler
    
     for spring
    
     contexts
  </description>
  <documentation>
    http://geronimo.apache.org/maven/xbean/3.6/xbean-spring
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    130519
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache XBean :: Spring'/>
    <p n='symbolicname' v='org.apache.xbean.spring'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.jndi'/>
    <p n='uses' v='javax.naming,javax.naming.spi,org.apache.commons.logging,org.apache.xbean.spring.context.impl,org.springframework.core.io,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.impl'/>
    <p n='uses' v='org.springframework.beans,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory,javax.management,org.apache.commons.logging,org.w3c.dom,javax.xml.namespace,org.apache.xbean.spring.context,org.springframework.beans.factory.xml,org.springframework.core.io'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.util'/>
    <p n='uses' v='org.springframework.beans,org.springframework.beans.factory.config'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.apache.xbean.spring.context.impl,org.springframework.context.support,org.springframework.core.io,org.springframework.beans,org.springframework.context,org.springframework.beans.factory.xml,org.xml.sax,org.springframework.beans.factory.config,org.springframework.beans.factory,org.w3c.dom,org.springframework.web.context.support'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2c'/>
    <p n='uses' v='org.springframework.beans.factory,org.springframework.beans.factory.support,org.springframework.util,org.apache.xbean.spring.context.impl,org.springframework.beans.factory.xml,org.springframework.beans.factory.config,org.w3c.dom,org.springframework.beans,javax.management,org.apache.commons.logging,org.springframework.context.support,org.springframework.core.io,org.springframework.beans.factory.parsing'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2'/>
    <p n='uses' v='org.apache.commons.logging,org.springframework.util,org.springframework.core.io,org.springframework.beans.factory.xml,org.springframework.beans.factory.config,org.springframework.core.io.support,org.springframework.beans.factory.parsing,org.springframework.util.xml,org.w3c.dom,org.springframework.beans.factory.support,org.springframework.beans.factory,org.springframework.beans,org.springframework.context,org.apache.xbean.spring.context,org.xml.sax'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.generator'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.commons.logging,com.thoughtworks.qdox.model,com.thoughtworks.qdox,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.qdox
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.qdox.model
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.impl)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.impl ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2c)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2c ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.generator)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.generator ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.jndi)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.jndi ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.util)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.util ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.parsing)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.parsing ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.web.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.web.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.xbean.xbean-spring/3.4.2' presentationname='xbean-spring' symbolicname='org.apache.xbean.xbean-spring' uri='../org/apache/xbean/xbean-spring/3.4.2/xbean-spring-3.4.2.jar' version='3.4.2'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    130185
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-spring'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-spring'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.jndi'/>
    <p n='uses' v='javax.naming,org.springframework.core.io,org.apache.commons.logging,org.springframework.beans.factory,org.apache.xbean.spring.context.impl,javax.naming.spi'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.generator'/>
    <p n='uses' v='com.thoughtworks.qdox.model,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.commons.logging,com.thoughtworks.qdox,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.util'/>
    <p n='uses' v='org.springframework.beans.factory.config,org.springframework.beans'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2c'/>
    <p n='uses' v='javax.management,org.springframework.beans.factory.parsing,org.w3c.dom,org.apache.commons.logging,org.springframework.context.support,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,org.springframework.beans.factory,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2'/>
    <p n='uses' v='org.springframework.util.xml,org.springframework.core.io.support,org.xml.sax,org.springframework.beans.factory.parsing,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.core.io,org.springframework.beans,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.springframework.context,org.springframework.context.support,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.beans.factory,org.apache.xbean.spring.context.impl,org.springframework.web.context.support'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.impl'/>
    <p n='uses' v='javax.management,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.qdox
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.qdox.model
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.impl)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.impl ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2c)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2c ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.generator)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.generator ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.jndi)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.jndi ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.util)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.util ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.parsing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.parsing
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.web.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.web.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.xbean.xbean-telnet/3.4.1' presentationname='xbean-telnet' symbolicname='org.apache.xbean.xbean-telnet' uri='../org/apache/xbean/xbean-telnet/3.4.1/xbean-telnet-3.4.1.jar' version='3.4.1'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    27957
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-telnet'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-telnet'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.terminal.telnet'/>
    <p n='uses' v='org.apache.xbean.command'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.command'/>
    <p n='uses' v='javax.naming,org.codehaus.groovy.runtime,groovy.lang'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.terminal.console'/>
    <p n='uses' v='org.apache.xbean.command'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=groovy.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package groovy.lang
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.command)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.command ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.terminal.console)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.terminal.console ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.terminal.telnet)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.terminal.telnet ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.runtime
  </require>
</resource>
<resource id='org.apache.xbean.xbean-telnet/3.5.0' presentationname='xbean-telnet' symbolicname='org.apache.xbean.xbean-telnet' uri='../org/apache/xbean/xbean-telnet/3.5/xbean-telnet-3.5.jar' version='3.5.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    27923
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-telnet'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-telnet'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.terminal.telnet'/>
    <p n='uses' v='org.apache.xbean.command'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.command'/>
    <p n='uses' v='javax.naming,org.codehaus.groovy.runtime,groovy.lang'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.terminal.console'/>
    <p n='uses' v='org.apache.xbean.command'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=groovy.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package groovy.lang
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.command)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.command ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.terminal.console)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.terminal.console ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.terminal.telnet)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.terminal.telnet ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.runtime
  </require>
</resource>
<resource id='org.apache.xbean.xbean-telnet/3.4.2' presentationname='xbean-telnet' symbolicname='org.apache.xbean.xbean-telnet' uri='../org/apache/xbean/xbean-telnet/3.4.2/xbean-telnet-3.4.2.jar' version='3.4.2'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    27959
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-telnet'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-telnet'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.terminal.telnet'/>
    <p n='uses' v='org.apache.xbean.command'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.command'/>
    <p n='uses' v='javax.naming,org.codehaus.groovy.runtime,groovy.lang'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.terminal.console'/>
    <p n='uses' v='org.apache.xbean.command'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=groovy.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package groovy.lang
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.command)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.command ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.terminal.console)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.terminal.console ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.terminal.telnet)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.terminal.telnet ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.runtime
  </require>
</resource>
<resource id='org.apache.xbean.telnet/3.6.0' presentationname='Apache XBean :: Telnet' symbolicname='org.apache.xbean.telnet' uri='../org/apache/xbean/xbean-telnet/3.6/xbean-telnet-3.6.jar' version='3.6.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://geronimo.apache.org/maven/xbean/3.6/xbean-telnet
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    27958
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache XBean :: Telnet'/>
    <p n='symbolicname' v='org.apache.xbean.telnet'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.command'/>
    <p n='uses' v='groovy.lang,org.codehaus.groovy.runtime,javax.naming'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.terminal.telnet'/>
    <p n='uses' v='org.apache.xbean.command'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.terminal.console'/>
    <p n='uses' v='org.apache.xbean.command'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=groovy.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package groovy.lang
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.command)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.command ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.terminal.console)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.terminal.console ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.terminal.telnet)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.terminal.telnet ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.runtime
  </require>
</resource>
<resource id='org.apache.xbean.xbean-telnet/3.4.0' presentationname='xbean-telnet' symbolicname='org.apache.xbean.xbean-telnet' uri='../org/apache/xbean/xbean-telnet/3.4/xbean-telnet-3.4.jar' version='3.4.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    27949
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-telnet'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-telnet'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.terminal.telnet'/>
    <p n='uses' v='org.apache.xbean.command'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.command'/>
    <p n='uses' v='javax.naming,org.codehaus.groovy.runtime,groovy.lang'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.terminal.console'/>
    <p n='uses' v='org.apache.xbean.command'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=groovy.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package groovy.lang
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.command)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.command ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.terminal.console)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.terminal.console ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.terminal.telnet)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.terminal.telnet ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.runtime
  </require>
</resource>
<resource id='org.apache.xbean.xbean-telnet/3.3.0' presentationname='xbean-telnet' symbolicname='org.apache.xbean.xbean-telnet' uri='../org/apache/xbean/xbean-telnet/3.3/xbean-telnet-3.3.jar' version='3.3.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    27527
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-telnet'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-telnet'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.terminal.telnet'/>
    <p n='uses' v='org.apache.xbean.command'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.command'/>
    <p n='uses' v='javax.naming,org.codehaus.groovy.runtime,groovy.lang'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.terminal.console'/>
    <p n='uses' v='org.apache.xbean.command'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=groovy.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package groovy.lang
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.command)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.command ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.terminal.console)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.terminal.console ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.terminal.telnet)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.terminal.telnet ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.runtime
  </require>
</resource>
<resource id='org.apache.xbean.xbean-telnet/3.4.3' presentationname='xbean-telnet' symbolicname='org.apache.xbean.xbean-telnet' uri='../org/apache/xbean/xbean-telnet/3.4.3/xbean-telnet-3.4.3.jar' version='3.4.3'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    27960
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-telnet'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-telnet'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.terminal.telnet'/>
    <p n='uses' v='org.apache.xbean.command'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.command'/>
    <p n='uses' v='javax.naming,org.codehaus.groovy.runtime,groovy.lang'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.terminal.console'/>
    <p n='uses' v='org.apache.xbean.command'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=groovy.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package groovy.lang
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.command)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.command ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.terminal.console)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.terminal.console ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.terminal.telnet)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.terminal.telnet ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.runtime
  </require>
</resource>
<resource id='org.apache.xbean.xbean-tiger/3.3.0' presentationname='xbean-tiger' symbolicname='org.apache.xbean.xbean-tiger' uri='../org/apache/xbean/xbean-tiger/3.3/xbean-tiger-3.3.jar' version='3.3.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    131898
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-tiger'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-tiger'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.tiger'/>
    <p n='uses' v='javax.management,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.jndi'/>
    <p n='uses' v='javax.naming,org.springframework.core.io,org.apache.commons.logging,org.springframework.beans.factory,org.apache.xbean.spring.context.impl,javax.naming.spi'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.generator'/>
    <p n='uses' v='com.thoughtworks.qdox.model,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.commons.logging,com.thoughtworks.qdox,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.util'/>
    <p n='uses' v='org.springframework.beans.factory.config,org.springframework.beans'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2c'/>
    <p n='uses' v='org.springframework.beans.factory.parsing,org.w3c.dom,org.apache.commons.logging,org.springframework.context.support,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,org.springframework.beans.factory,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.v2'/>
    <p n='uses' v='org.springframework.util.xml,org.springframework.core.io.support,org.xml.sax,org.springframework.beans.factory.parsing,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.core.io,org.springframework.beans,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.springframework.context,org.springframework.context.support,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.beans.factory,org.apache.xbean.spring.context.impl,org.springframework.web.context.support'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.spring.context.impl'/>
    <p n='uses' v='javax.management,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.qdox
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.qdox.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.qdox.model
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.impl)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.impl ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2c)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2c ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.generator)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.generator ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.jndi)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.jndi ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.util)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.util ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.tiger)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.tiger ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.parsing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.parsing
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.web.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.web.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.xbean.xbean-kernel/3.3.0' presentationname='xbean-kernel' symbolicname='org.apache.xbean.xbean-kernel' uri='../org/apache/xbean/xbean-kernel/3.3/xbean-kernel-3.3.jar' version='3.3.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    86175
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-kernel'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-kernel'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.rmi'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.kernel'/>
    <p n='uses' v='org.apache.xbean.kernel.standard'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.kernel.standard'/>
    <p n='uses' v='org.apache.xbean.kernel'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.kernel)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.kernel ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.kernel.standard)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.kernel.standard ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.rmi)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.rmi ;version=3.3.0
  </require>
</resource>
<resource id='org.apache.xbean.xbean-classloader/3.3.0' presentationname='xbean-classloader' symbolicname='org.apache.xbean.xbean-classloader' uri='../org/apache/xbean/xbean-classloader/3.3/xbean-classloader-3.3.jar' version='3.3.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    47328
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-classloader'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-classloader'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classloader'/>
    <p n='uses' v='org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classloader)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classloader ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
</resource>
<resource id='org.apache.xbean.xbean-classloader/3.4.0' presentationname='xbean-classloader' symbolicname='org.apache.xbean.xbean-classloader' uri='../org/apache/xbean/xbean-classloader/3.4/xbean-classloader-3.4.jar' version='3.4.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    47542
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-classloader'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-classloader'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classloader'/>
    <p n='uses' v='org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classloader)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classloader ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
</resource>
<resource id='org.apache.xbean.xbean-classloader/3.4.3' presentationname='xbean-classloader' symbolicname='org.apache.xbean.xbean-classloader' uri='../org/apache/xbean/xbean-classloader/3.4.3/xbean-classloader-3.4.3.jar' version='3.4.3'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    47551
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-classloader'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-classloader'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classloader'/>
    <p n='uses' v='org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classloader)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classloader ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
</resource>
<resource id='org.apache.xbean.xbean-classloader/3.4.1' presentationname='xbean-classloader' symbolicname='org.apache.xbean.xbean-classloader' uri='../org/apache/xbean/xbean-classloader/3.4.1/xbean-classloader-3.4.1.jar' version='3.4.1'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    47543
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-classloader'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-classloader'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classloader'/>
    <p n='uses' v='org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classloader)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classloader ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
</resource>
<resource id='org.apache.xbean.xbean-classloader/3.5.0' presentationname='xbean-classloader' symbolicname='org.apache.xbean.xbean-classloader' uri='../org/apache/xbean/xbean-classloader/3.5/xbean-classloader-3.5.jar' version='3.5.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    47523
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-classloader'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-classloader'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classloader'/>
    <p n='uses' v='org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classloader)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classloader ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
</resource>
<resource id='org.apache.xbean.xbean-classloader/3.4.2' presentationname='xbean-classloader' symbolicname='org.apache.xbean.xbean-classloader' uri='../org/apache/xbean/xbean-classloader/3.4.2/xbean-classloader-3.4.2.jar' version='3.4.2'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    47546
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-classloader'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-classloader'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classloader'/>
    <p n='uses' v='org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classloader)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classloader ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
</resource>
<resource id='org.apache.xbean.classloader/3.6.0' presentationname='Apache XBean :: Classloader' symbolicname='org.apache.xbean.classloader' uri='../org/apache/xbean/xbean-classloader/3.6/xbean-classloader-3.6.jar' version='3.6.0'>
  <description>
    xbean-classloader includes a flexibie multi-parent classloader
  </description>
  <documentation>
    http://geronimo.apache.org/maven/xbean/3.6/xbean-classloader
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    47809
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache XBean :: Classloader'/>
    <p n='symbolicname' v='org.apache.xbean.classloader'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classloader'/>
    <p n='uses' v='org.springframework.beans.factory'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classloader)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classloader ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.xbean.xbean-classpath/3.4.3' presentationname='xbean-classpath' symbolicname='org.apache.xbean.xbean-classpath' uri='../org/apache/xbean/xbean-classpath/3.4.3/xbean-classpath-3.4.3.jar' version='3.4.3'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20055
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-classpath'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-classpath'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classpath.maven'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classpath'/>
    <p n='uses' v='sun.misc'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classpath)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classpath ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classpath.maven)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classpath.maven ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.xbean.xbean-classpath/3.5.0' presentationname='xbean-classpath' symbolicname='org.apache.xbean.xbean-classpath' uri='../org/apache/xbean/xbean-classpath/3.5/xbean-classpath-3.5.jar' version='3.5.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20052
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-classpath'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-classpath'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classpath.maven'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classpath'/>
    <p n='uses' v='sun.misc'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classpath)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classpath ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classpath.maven)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classpath.maven ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.xbean.classpath/3.6.0' presentationname='Apache XBean :: ClassPath' symbolicname='org.apache.xbean.classpath' uri='../org/apache/xbean/xbean-classpath/3.6/xbean-classpath-3.6.jar' version='3.6.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://geronimo.apache.org/maven/xbean/3.6/xbean-classpath
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20100
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache XBean :: ClassPath'/>
    <p n='symbolicname' v='org.apache.xbean.classpath'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classpath.maven'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classpath'/>
    <p n='uses' v='sun.misc'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classpath)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classpath ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classpath.maven)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classpath.maven ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.xbean.xbean-classpath/3.4.0' presentationname='xbean-classpath' symbolicname='org.apache.xbean.xbean-classpath' uri='../org/apache/xbean/xbean-classpath/3.4/xbean-classpath-3.4.jar' version='3.4.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20047
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-classpath'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-classpath'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classpath.maven'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classpath'/>
    <p n='uses' v='sun.misc'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classpath)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classpath ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classpath.maven)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classpath.maven ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.xbean.xbean-classpath/3.4.2' presentationname='xbean-classpath' symbolicname='org.apache.xbean.xbean-classpath' uri='../org/apache/xbean/xbean-classpath/3.4.2/xbean-classpath-3.4.2.jar' version='3.4.2'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20054
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-classpath'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-classpath'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classpath.maven'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classpath'/>
    <p n='uses' v='sun.misc'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classpath)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classpath ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classpath.maven)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classpath.maven ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.xbean.xbean-classpath/3.3.0' presentationname='xbean-classpath' symbolicname='org.apache.xbean.xbean-classpath' uri='../org/apache/xbean/xbean-classpath/3.3/xbean-classpath-3.3.jar' version='3.3.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19912
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-classpath'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-classpath'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classpath.maven'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classpath'/>
    <p n='uses' v='sun.misc'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classpath)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classpath ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classpath.maven)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classpath.maven ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.xbean.xbean-classpath/3.4.1' presentationname='xbean-classpath' symbolicname='org.apache.xbean.xbean-classpath' uri='../org/apache/xbean/xbean-classpath/3.4.1/xbean-classpath-3.4.1.jar' version='3.4.1'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20053
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-classpath'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-classpath'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classpath.maven'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.classpath'/>
    <p n='uses' v='sun.misc'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classpath)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classpath ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classpath.maven)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classpath.maven ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.xbean.xbean-finder/3.4.3' presentationname='xbean-finder' symbolicname='org.apache.xbean.xbean-finder' uri='../org/apache/xbean/xbean-finder/3.4.3/xbean-finder-3.4.3.jar' version='3.4.3'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    34657
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-finder'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-finder'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.finder'/>
    <p n='uses' v='org.objectweb.asm.commons,org.objectweb.asm'/>
    <p n='version' t='version' v='3.4.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons
  </require>
</resource>
<resource id='org.apache.xbean.finder/3.6.0' presentationname='Apache XBean :: Classpath Resource Finder' symbolicname='org.apache.xbean.finder' uri='../org/apache/xbean/xbean-finder/3.6/xbean-finder-3.6.jar' version='3.6.0'>
  <description>
    XBean Finder helps to find annotations in classes
  </description>
  <documentation>
    http://geronimo.apache.org/maven/xbean/3.6/xbean-finder
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    35765
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache XBean :: Classpath Resource Finder'/>
    <p n='symbolicname' v='org.apache.xbean.finder'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.finder'/>
    <p n='uses' v='org.objectweb.asm,org.objectweb.asm.commons'/>
    <p n='version' t='version' v='3.6.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons ;version=3.1.0
  </require>
</resource>
<resource id='org.apache.xbean.xbean-finder/3.5.0' presentationname='xbean-finder' symbolicname='org.apache.xbean.xbean-finder' uri='../org/apache/xbean/xbean-finder/3.5/xbean-finder-3.5.jar' version='3.5.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    35086
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-finder'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-finder'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.finder'/>
    <p n='uses' v='org.objectweb.asm.commons,org.objectweb.asm'/>
    <p n='version' t='version' v='3.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons
  </require>
</resource>
<resource id='org.apache.xbean.xbean-finder/3.4.2' presentationname='xbean-finder' symbolicname='org.apache.xbean.xbean-finder' uri='../org/apache/xbean/xbean-finder/3.4.2/xbean-finder-3.4.2.jar' version='3.4.2'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    34657
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-finder'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-finder'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.finder'/>
    <p n='uses' v='org.objectweb.asm.commons,org.objectweb.asm'/>
    <p n='version' t='version' v='3.4.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons
  </require>
</resource>
<resource id='org.apache.xbean.xbean-finder/3.4.0' presentationname='xbean-finder' symbolicname='org.apache.xbean.xbean-finder' uri='../org/apache/xbean/xbean-finder/3.4/xbean-finder-3.4.jar' version='3.4.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    34597
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-finder'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-finder'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.finder'/>
    <p n='uses' v='org.objectweb.asm.commons,org.objectweb.asm'/>
    <p n='version' t='version' v='3.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons
  </require>
</resource>
<resource id='org.apache.xbean.xbean-finder/3.3.0' presentationname='xbean-finder' symbolicname='org.apache.xbean.xbean-finder' uri='../org/apache/xbean/xbean-finder/3.3/xbean-finder-3.3.jar' version='3.3.0'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    34707
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-finder'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-finder'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.finder'/>
    <p n='uses' v='org.objectweb.asm.commons,org.objectweb.asm'/>
    <p n='version' t='version' v='3.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons
  </require>
</resource>
<resource id='org.apache.xbean.xbean-finder/3.4.1' presentationname='xbean-finder' symbolicname='org.apache.xbean.xbean-finder' uri='../org/apache/xbean/xbean-finder/3.4.1/xbean-finder-3.4.1.jar' version='3.4.1'>
  <description>
    XBean is a plugin based server architecture.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    34604
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-finder'/>
    <p n='symbolicname' v='org.apache.xbean.xbean-finder'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xbean.finder'/>
    <p n='uses' v='org.objectweb.asm.commons,org.objectweb.asm'/>
    <p n='version' t='version' v='3.4.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons
  </require>
</resource>
<resource id='org.apache.portals.portlet-api_1.0_spec/1.0.0' presentationname='Java Portlet Specification V1.0' symbolicname='org.apache.portals.portlet-api_1.0_spec' uri='../org/apache/portals/portlet-api_1.0_spec/1.0/portlet-api_1.0_spec-1.0.jar' version='1.0.0'>
  <description>
    The Java Portlet API version 1.0 developed by the Java Community
    
    
    
    
    
    
    
    
    
    
    
     Process
    
     JSR-168
     Expert
    
     Group.
  </description>
  <documentation>
    http://portals.apache.org/portlet-spec/portlet-api-1.0
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    23780
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Java Portlet Specification V1.0'/>
    <p n='symbolicname' v='org.apache.portals.portlet-api_1.0_spec'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.portlet'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.portlet)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.portlet ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.portals.portlet-api_2.0_spec/1.0.0' presentationname='Java Portlet Specification V2.0' symbolicname='org.apache.portals.portlet-api_2.0_spec' uri='../org/apache/portals/portlet-api_2.0_spec/1.0/portlet-api_2.0_spec-1.0.jar' version='1.0.0'>
  <description>
    The Java Portlet API version 2.0 developed by the Java Community
    
    
    
    
    
    
    
    
    
    
    
     Process
    
     JSR-286
     Expert
    
     Group.
  </description>
  <documentation>
    http://portals.apache.org/portlet-spec/portlet-api-2.0
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    54097
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Java Portlet Specification V2.0'/>
    <p n='symbolicname' v='org.apache.portals.portlet-api_2.0_spec'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.portlet.filter'/>
    <p n='uses' v='javax.portlet,javax.xml.namespace,javax.servlet.http,org.w3c.dom'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.portlet'/>
    <p n='uses' v='javax.xml.namespace,javax.servlet.http,org.w3c.dom'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.portlet)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.portlet ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.portlet.filter)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.portlet.filter ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.rt-transports-jbi/2.2.3' presentationname='Apache CXF Runtime JBI Transport' symbolicname='org.apache.cxf.rt-transports-jbi' uri='../org/apache/cxf/cxf-rt-transports-jbi/2.2.3/cxf-rt-transports-jbi-2.2.3.jar' version='2.2.3'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    39991
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Transport'/>
    <p n='symbolicname' v='org.apache.cxf.rt-transports-jbi'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.transport,javax.xml.namespace,org.apache.cxf.common.i18n,javax.jbi.servicedesc,org.apache.cxf.service.model,javax.xml.transform,org.apache.cxf.io,javax.jws,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers,javax.activation,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.parsers,javax.jbi,org.apache.cxf.configuration,javax.annotation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.jbi'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transports.jbi,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.transport.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.jbi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.jbi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.cxf-rt-transports-jbi/2.1.3' presentationname='Apache CXF Runtime JBI Transport' symbolicname='org.apache.cxf.cxf-rt-transports-jbi' uri='../org/apache/cxf/cxf-rt-transports-jbi/2.1.3/cxf-rt-transports-jbi-2.1.3.jar' version='2.1.3'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    39411
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Transport'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-rt-transports-jbi'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.jbi.messaging,javax.activation,org.w3c.dom,javax.jbi.servicedesc,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.jbi,javax.xml.transform.dom,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.io,javax.jws,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.transport.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.jbi'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transports.jbi,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi.wsdl11)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi.wsdl11 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.jbi)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.jbi ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.cxf-rt-transports-jbi/2.1.4' presentationname='Apache CXF Runtime JBI Transport' symbolicname='org.apache.cxf.cxf-rt-transports-jbi' uri='../org/apache/cxf/cxf-rt-transports-jbi/2.1.4/cxf-rt-transports-jbi-2.1.4.jar' version='2.1.4'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    39317
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Transport'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-rt-transports-jbi'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.jbi.messaging,javax.activation,org.w3c.dom,javax.jbi.servicedesc,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.jbi,javax.xml.transform.dom,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.io,javax.jws,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.transport.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.jbi'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transports.jbi,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi.wsdl11)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi.wsdl11 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.jbi)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.jbi ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.cxf-rt-transports-jbi/2.1.6' presentationname='Apache CXF Runtime JBI Transport' symbolicname='org.apache.cxf.cxf-rt-transports-jbi' uri='../org/apache/cxf/cxf-rt-transports-jbi/2.1.6/cxf-rt-transports-jbi-2.1.6.jar' version='2.1.6'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    40049
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Transport'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-rt-transports-jbi'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.jbi.messaging,javax.activation,org.w3c.dom,javax.jbi.servicedesc,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.jbi,javax.xml.transform.dom,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.io,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.transport.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.jbi'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transports.jbi,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi.wsdl11)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi.wsdl11 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.jbi)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.jbi ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.cxf-rt-transports-jbi/2.2.0' presentationname='Apache CXF Runtime JBI Transport' symbolicname='org.apache.cxf.cxf-rt-transports-jbi' uri='../org/apache/cxf/cxf-rt-transports-jbi/2.2/cxf-rt-transports-jbi-2.2.jar' version='2.2.0'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    39312
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Transport'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-rt-transports-jbi'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.jbi.messaging,javax.activation,org.w3c.dom,javax.jbi.servicedesc,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.jbi,javax.xml.transform.dom,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.io,javax.jws,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.transport.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.jbi'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transports.jbi,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.jbi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.jbi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.rt-transports-jbi/2.2.2' presentationname='Apache CXF Runtime JBI Transport' symbolicname='org.apache.cxf.rt-transports-jbi' uri='../org/apache/cxf/cxf-rt-transports-jbi/2.2.2/cxf-rt-transports-jbi-2.2.2.jar' version='2.2.2'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    39283
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Transport'/>
    <p n='symbolicname' v='org.apache.cxf.rt-transports-jbi'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.transport,javax.xml.namespace,org.apache.cxf.common.i18n,javax.jbi.servicedesc,org.apache.cxf.service.model,javax.xml.transform,javax.jws,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.activation,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.parsers,javax.jbi,org.apache.cxf.configuration,javax.annotation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.jbi'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transports.jbi,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.transport.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.jbi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.jbi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.cxf-rt-transports-jbi/2.1.5' presentationname='Apache CXF Runtime JBI Transport' symbolicname='org.apache.cxf.cxf-rt-transports-jbi' uri='../org/apache/cxf/cxf-rt-transports-jbi/2.1.5/cxf-rt-transports-jbi-2.1.5.jar' version='2.1.5'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    39332
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Transport'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-rt-transports-jbi'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.jbi.messaging,javax.activation,org.w3c.dom,javax.jbi.servicedesc,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.jbi,javax.xml.transform.dom,org.apache.cxf.configuration,javax.annotation,javax.jws,org.apache.cxf.io,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.transport.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.jbi'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transports.jbi,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi.wsdl11)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi.wsdl11 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.jbi)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.jbi ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.cxf-rt-transports-jbi/2.1.2' presentationname='Apache CXF Runtime JBI Transport' symbolicname='org.apache.cxf.cxf-rt-transports-jbi' uri='../org/apache/cxf/cxf-rt-transports-jbi/2.1.2/cxf-rt-transports-jbi-2.1.2.jar' version='2.1.2'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    39239
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Transport'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-rt-transports-jbi'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.jbi.messaging,javax.activation,org.w3c.dom,javax.jbi.servicedesc,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.jbi,javax.xml.transform.dom,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.io,javax.jws,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.transport.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.jbi'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transports.jbi,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi.wsdl11)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi.wsdl11 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.jbi)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.jbi ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.rt-transports-jbi/2.2.1' presentationname='Apache CXF Runtime JBI Transport' symbolicname='org.apache.cxf.rt-transports-jbi' uri='../org/apache/cxf/cxf-rt-transports-jbi/2.2.1/cxf-rt-transports-jbi-2.2.1.jar' version='2.2.1'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    39286
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Transport'/>
    <p n='symbolicname' v='org.apache.cxf.rt-transports-jbi'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.transport,javax.xml.namespace,org.apache.cxf.common.i18n,javax.jbi.servicedesc,org.apache.cxf.service.model,javax.xml.transform,javax.jws,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.activation,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.parsers,javax.jbi,org.apache.cxf.configuration,javax.annotation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.jbi'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jbi.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transports.jbi,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.transport.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.jbi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.jbi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle/2.0.12' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle' uri='../org/apache/cxf/cxf-bundle/2.0.12/cxf-bundle-2.0.12.jar' version='2.0.12'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    3003519
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.common.util,javax.jws,org.apache.cxf,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.security.auth.callback,javax.xml.stream,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.ws.security.processor,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,org.apache.cxf.jaxws.support,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.xml.transform.sax,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.datatype,org.apache.cxf.tools.util,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.tools.plugin,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.xml.stream.events,org.w3c.dom.ls,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,javax.wsdl.extensions.mime,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,javax.xml.transform.sax,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,org.xmlsoap.schemas.wsdl.http,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.codehaus.jra,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.transports.http_jetty.configuration,org.apache.cxf.configuration.spring,javax.xml.bind,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.xml.ws,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap,javax.jws.soap,javax.jws'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.version,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.transport.local,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxws.support,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.handler,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.configuration.security,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.databinding.source,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.jdom.output,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.common,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,com.sun.tools.xjc.api.impl.s2j,com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.xml.transform.dom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.headers,javax.xml.ws.handler,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.service,javax.wsdl,javax.activation,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,org.apache.cxf.databinding.source,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management,org.apache.cxf.management.annotation,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.resource,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.validation,javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.tools.ant.types,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.tools.ant,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.catalog,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.xml.sax,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.codehaus.jra,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.binding.http'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.io,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='javax.xml.namespace,javax.activation,org.apache.cxf.aegis,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.wsdl.extensions.mime,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.extensions.http,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.wsdl.factory,org.apache.cxf.tools.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.misc.processor.address,org.xml.sax,javax.wsdl.xml,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms,org.springframework.jms.support,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.springframework.beans.factory,org.springframework.jms.connection,org.apache.cxf.wsdl,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.cxf.transport.jms.continuations,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,org.apache.cxf.security,org.apache.cxf.continuations,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,org.mozilla.javascript,org.apache.cxf.jaxws,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.transport.jms,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.jaxws.binding.soap,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.common.util.factory,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlsoap.schemas.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.aop,org.springframework.aop.framework,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.wsdl.extensions,javax.jws,org.apache.cxf,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util.factory'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf,org.apache.cxf.common.i18n,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api.impl.s2j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api.impl.s2j
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util.factory)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util.factory ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle/2.1.5' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle' uri='../org/apache/cxf/cxf-bundle/2.1.5/cxf-bundle-2.1.5.jar' version='2.1.5'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    4308970
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.transport.servlet,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxrs.ext,org.xml.sax,javax.activation,org.w3c.dom,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.transport,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,com.ibm.wsdl,javax.xml.namespace,org.omg.PortableServer,org.apache.cxf.binding.corba.types,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.commons.codec,org.apache.commons.codec.binary,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.databinding,org.omg.CosNaming,org.apache.ws.commons.schema,org.omg.CORBA.portable,org.apache.cxf.service.model,org.objectweb.asm,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.corba.interceptors'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.apache.cxf.common,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.service.model,org.springframework.context,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.springframework.beans.factory.support,javax.jws.soap,org.apache.cxf.tools.java2wsdl.processor.internal,org.springframework.beans.factory.xml,javax.jws,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.xfire.aegis.type.java5'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.types'/>
    <p n='uses' v='javax.wsdl,javax.xml.stream.events,org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,javax.xml.namespace,org.omg.CORBA.portable,org.apache.cxf.service.model,org.omg.CORBA,org.apache.cxf.binding.corba.runtime,org.apache.cxf.binding.corba,org.apache.cxf.common.util,org.apache.commons.codec.binary,org.apache.cxf.wsdl11,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.toolspec.toolspecs'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.security.auth.callback,javax.xml.stream,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.ws.security.processor,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.java2wsdl.processor.internal.simple,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,javax.xml.parsers,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,javax.mail.util,org.apache.cxf.endpoint,javax.imageio,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.imageio.stream,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.xmlbeans,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.codehaus.jettison.mapped,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.jaxrs.utils.schemas,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.abdera.parser,org.apache.cxf.jaxrs.impl,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.abdera,org.apache.cxf.endpoint,org.codehaus.jettison,javax.activation,org.w3c.dom,org.apache.cxf.jaxrs.client,org.apache.abdera.writer,javax.xml.bind.annotation,org.apache.cxf.jaxrs.ext.multipart,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,org.apache.cxf.jaxrs.utils.multipart,javax.ws.rs.core,org.apache.cxf.aegis.type,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.javascript.service,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.common,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.endpoint,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.springframework.beans.factory.support,org.apache.cxf.common.xmlschema,org.springframework.beans.factory.xml,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.datatype,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.tools.plugin,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.attachment,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.xml.stream.events,org.w3c.dom.ls,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,javax.wsdl.extensions.mime,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,javax.xml.transform.sax,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.wsdl'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.corba.common.idltypes,org.apache.ws.commons.schema,org.apache.cxf.tools.corba.common,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.corba.utils,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,org.apache.cxf,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,com.ibm.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util.xml,org.apache.cxf.tools.util,com.ibm.wsdl.xml,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,org.apache.cxf.tools.common,com.ibm.wsdl.extensions,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.constants'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.codehaus.jra,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.common.util,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.idl'/>
    <p n='uses' v='org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,antlr.collections.impl,javax.wsdl.factory,org.apache.cxf.tools.common,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.constants,org.apache.cxf.wsdl,antlr,javax.wsdl,org.apache.ws.commons.schema,org.apache.cxf.tools.corba.idlpreprocessor,org.apache.cxf.tools.corba.common,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,antlr.collections,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.bus.spring,org.apache.cxf.configuration.jsse.spring,org.apache.cxf.common.util,org.apache.cxf.transports.http_jetty.configuration,org.springframework.beans.factory,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='org.apache.cxf.common,org.apache.cxf.common.util,javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,javax.xml.bind.annotation.adapters,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.clustering,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common.model,org.apache.ws.commons.schema,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.version,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.attachment,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.mail.internet,org.apache.cxf.jaxrs.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.transport.local,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,org.apache.cxf.service,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,javax.annotation,org.apache.cxf.io,org.apache.cxf.jaxrs,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.common,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.wsdl'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.annotation,javax.xml.namespace,org.apache.cxf,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba'/>
    <p n='uses' v='org.apache.cxf.tools.corba.processors.idl,org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.corba.common,org.apache.cxf.tools.corba.processors.wsdl,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.apache.cxf.staxutils,org.jaxen.jdom,org.jdom.output,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.configuration.security,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.service'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.soap,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.idltypes'/>
    <p n='uses' v='org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.idlpreprocessor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.xml.sax,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.client'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.binding,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.jaxrs.ext.form,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.multipart'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.activation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws.util'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.xml.transform.dom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.schemas'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.validation,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.binding.xml,org.apache.cxf.feature,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.ws.soap,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.objectweb.asm,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.multipart'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.xmlbeans.impl.values,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.xmlbeans.impl.schema,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.resource,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.jaxb.attachment,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.codehaus.xfire.aegis.type.java5,org.jdom,javax.xml.bind.annotation,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.form'/>
    <p n='uses' v='org.apache.cxf.jaxrs.impl,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.ws.commons.schema.utils,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.xml.sax,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.utils'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.javascript'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.javascript.service,org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.tools.common.toolspec,javax.wsdl,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,org.apache.cxf.javascript.types,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.interceptors'/>
    <p n='uses' v='org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.omg.CORBA.portable,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.types'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.codehaus.jra,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.binding.http'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.xml.namespace,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.util,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,repackage,org.apache.cxf.tools.common,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.transport,org.apache.cxf.configuration.security,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.ws.addressing,org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.javascript.service,org.apache.cxf.aegis.type.mtom,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.activation,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.jaxen,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.common,javax.wsdl.factory,org.apache.cxf.tools.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.misc.processor.address,org.xml.sax,javax.wsdl.xml,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.wsdl.extensions.mime,javax.xml.ws,org.apache.ws.commons.schema.constants,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.extensions.http,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.jaxen,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.jaxen.jdom'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms,org.springframework.jms.support,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.ws.addressing,org.springframework.beans.factory,org.springframework.jms.connection,org.apache.cxf.wsdl,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.cxf.transport.jms.continuations,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,org.apache.cxf.security,org.apache.cxf.continuations,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba'/>
    <p n='uses' v='org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer.POAPackage,org.omg.PortableServer,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.binding,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.wsdl,org.omg.CORBA.TypeCodePackage,org.omg.CORBA.portable,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.omg.CORBA,org.apache.cxf.binding.corba.interceptors,javax.annotation,org.apache.cxf.io,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,org.mozilla.javascript,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf,javax.xml.ws,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.transport.jms,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.jaxws.context,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.ws.rs,org.apache.cxf.configuration,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.workqueue,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.wsdl.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.runtime'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer,org.omg.CORBA.portable,org.apache.cxf.service.model,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.binding.corba.types,org.apache.cxf.message,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop,net.sf.cglib.proxy,org.springframework.aop.framework,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.ws.policy,javax.xml.ws.wsaddressing,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.common,org.apache.cxf.io,javax.xml.ws.spi,org.apache.cxf,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.jaxrs.client,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.jaxrs,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2js.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=antlr)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.core
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.ext
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.binary)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec.binary
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.interceptors)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.interceptors ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.runtime)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.runtime ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.types)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.types ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.utils)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.utils ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.wsdl)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.wsdl ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.service)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.service ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.types)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.types ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.client)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.client ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.form)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.form ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.multipart)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.multipart ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.multipart)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.multipart ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.schemas)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.schemas ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.idltypes)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.idltypes ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.toolspec.toolspecs)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.toolspec.toolspecs
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.idlpreprocessor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.idlpreprocessor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.idl)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.idl ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.wsdl)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.wsdl ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.utils)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.utils ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js.processor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js.processor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws.util)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws.util ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.javascript)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.javascript ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type.java5)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type.java5
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.TypeCodePackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.TypeCodePackage
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.portable)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.portable
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CosNaming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CosNaming
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer.POAPackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer.POAPackage
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle/2.0.8' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle' uri='../org/apache/cxf/cxf-bundle/2.0.8/cxf-bundle-2.0.8.jar' version='2.0.8'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2851008
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.common.util,javax.jws,org.apache.cxf,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.xml.stream,javax.security.auth.callback,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,org.apache.cxf.jaxws.support,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.xml.transform.sax,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.datatype,org.apache.cxf.tools.util,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.tools.plugin,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.xml.stream.events,org.w3c.dom.ls,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,javax.wsdl.extensions.mime,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,javax.xml.transform.sax,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.extension,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,org.xmlsoap.schemas.wsdl.http,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.codehaus.jra,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.xml.ws,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap,javax.jws.soap,javax.jws'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.transports.http,javax.wsdl.xml,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.transport.local,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxws.support,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.handler,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,javax.xml.bind,org.springframework.util,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.xml.resolver,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.message,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws,org.apache.cxf.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.databinding.source,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.jdom.output,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.bus,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,javanet.staxutils,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,javax.xml.transform.stream,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.common,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,com.sun.tools.xjc.api.impl.s2j,com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.xml.transform.dom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.frontend,org.apache.cxf.binding.xml,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.service,javax.wsdl,javax.activation,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,org.apache.cxf.databinding.source,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.resource,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.context,org.apache.cxf.ws.policy.attachment.external,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.validation,javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.tools.ant.types,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.tools.ant,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.catalog,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.xml.resolver,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.codehaus.jra,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.binding.http'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf,org.apache.cxf.transports.http.configuration'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='org.apache.cxf.attachment,javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.jaxws.support,org.apache.cxf.binding.soap,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='javax.xml.namespace,javax.activation,org.apache.cxf.aegis,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.wsdl.extensions.mime,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.extensions.http,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.wsdl.factory,org.apache.cxf.tools.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.misc.processor.address,org.xml.sax,javax.wsdl.xml,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.message,javax.naming,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,org.apache.cxf.wsdl,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,org.mozilla.javascript,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf,javax.xml.ws,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.xml.sax,javax.wsdl.xml,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.ws.commons.schema.resolver,org.apache.xml.resolver.helpers,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.jaxws.binding.soap,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.common.util.factory,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlsoap.schemas.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.wsdl.extensions,javax.jws,org.apache.cxf,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.cxf.common.logging,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util.factory'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf,org.apache.cxf.common.i18n,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api.impl.s2j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api.impl.s2j
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javanet.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javanet.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util.factory)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util.factory ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle/2.1.2' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle' uri='../org/apache/cxf/cxf-bundle/2.1.2/cxf-bundle-2.1.2.jar' version='2.1.2'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    4017042
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,com.ibm.wsdl,javax.xml.namespace,org.omg.PortableServer,org.apache.cxf.binding.corba.types,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.commons.codec,org.apache.commons.codec.binary,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.databinding,org.omg.CosNaming,org.apache.ws.commons.schema,org.omg.CORBA.portable,org.apache.cxf.service.model,org.objectweb.asm,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.corba.interceptors'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.service.model,org.springframework.context,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.springframework.beans.factory.support,javax.jws.soap,org.apache.cxf.tools.java2wsdl.processor.internal,org.springframework.beans.factory.xml,javax.jws,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.xfire.aegis.type.java5'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.types'/>
    <p n='uses' v='javax.wsdl,javax.xml.stream.events,org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,javax.xml.namespace,org.omg.CORBA.portable,org.apache.cxf.service.model,org.omg.CORBA,org.apache.cxf.binding.corba.runtime,org.apache.cxf.binding.corba,org.apache.cxf.common.util,org.apache.commons.codec.binary,org.apache.cxf.wsdl11,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.toolspec.toolspecs'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.xml.stream,javax.security.auth.callback,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.java2wsdl.processor.internal.simple,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.xmlbeans,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.codehaus.jettison.mapped,javax.xml.bind.annotation.adapters,javax.xml.transform,org.apache.cxf.message,org.apache.abdera.parser,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.abdera,org.w3c.dom,org.apache.abdera.writer,javax.xml.bind.annotation,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.javascript.service,org.apache.cxf.bus.spring,org.springframework.context.support,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.springframework.beans.factory.support,org.apache.cxf.common.xmlschema,org.springframework.beans.factory.xml,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.datatype,org.apache.cxf.tools.util,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.tools.plugin,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.attachment,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.commons.logging,org.apache.cxf.aegis,org.jdom,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.xml.stream.events,org.w3c.dom.ls,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,javax.wsdl.extensions.mime,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,javax.xml.transform.sax,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.wsdl'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.corba.common.idltypes,org.apache.ws.commons.schema,org.apache.cxf.tools.corba.common,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.corba.utils,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,org.apache.cxf,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.extension,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,com.ibm.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util.xml,org.apache.cxf.tools.util,com.ibm.wsdl.xml,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,org.apache.cxf.tools.common,com.ibm.wsdl.extensions,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.constants'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.codehaus.jra,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.jws,javax.xml.bind.annotation,org.apache.cxf.service.model,javax.xml.ws,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.idl'/>
    <p n='uses' v='org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,antlr.collections.impl,javax.wsdl.factory,org.apache.cxf.tools.common,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.constants,org.apache.cxf.wsdl,antlr,javax.wsdl,org.apache.ws.commons.schema,org.apache.cxf.tools.corba.idlpreprocessor,org.apache.cxf.tools.corba.common,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,antlr.collections,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common.model,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.transport.local,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxws.support,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.handler,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,javax.xml.bind,org.springframework.util,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.ws.rs,org.apache.cxf.message,org.apache.cxf.jaxrs.model,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.xml.resolver,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.wsdl'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.annotation,javax.xml.namespace,org.apache.cxf,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba'/>
    <p n='uses' v='org.apache.cxf.tools.corba.processors.idl,org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.corba.common,org.apache.cxf.tools.corba.processors.wsdl,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.ws.commons.schema.utils,org.apache.cxf.staxutils,org.jdom.output,org.jaxen.jdom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.message,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.service'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.soap,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.bus,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.idltypes'/>
    <p n='uses' v='org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.idlpreprocessor'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,javanet.staxutils,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,javax.xml.transform.stream,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws.util'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,com.sun.tools.xjc.api.impl.s2j,com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.xml.transform.dom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.headers,javax.xml.ws.handler,javax.xml.namespace,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.frontend,org.apache.cxf.binding.xml,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.jaxws.binding.http,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,com.sun.xml.bind.api,org.w3c.dom,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.xmlbeans.impl.values,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.xmlbeans.impl.schema,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.resource,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.context,org.apache.cxf.ws.policy.attachment.external,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.xml.bind.api,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.codehaus.xfire.aegis.type.java5,org.jdom,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.catalog,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.xml.resolver,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.utils'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.javascript'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.javascript.service,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.tools.common.toolspec,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,org.apache.cxf.javascript.types,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.interceptors'/>
    <p n='uses' v='org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.binding.corba.runtime,org.apache.cxf.binding.corba.types,org.apache.cxf.message,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.omg.CORBA.portable,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.types'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.codehaus.jra,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.binding.http'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf,org.apache.cxf.transports.http.configuration'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='org.apache.cxf.attachment,javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.jaxws.support,org.apache.cxf.binding.soap,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans.impl.util,org.apache.xmlbeans,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,repackage,org.apache.cxf.tools.common,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.provider,org.apache.cxf.configuration.security,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.message,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.ws.addressing,org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.javascript.service,org.apache.cxf.aegis.type.mtom,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.activation,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.jaxen,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.wsdl.factory,org.apache.cxf.tools.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.misc.processor.address,org.xml.sax,javax.wsdl.xml,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.wsdl.extensions.mime,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.extensions.http,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.jaxen,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.jaxen.jdom'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.message,javax.naming,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,org.apache.cxf.wsdl,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba'/>
    <p n='uses' v='org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer.POAPackage,org.omg.PortableServer,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.binding,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.wsdl,org.omg.CORBA.TypeCodePackage,org.omg.CORBA.portable,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.omg.CORBA,org.apache.cxf.binding.corba.interceptors,javax.annotation,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,org.mozilla.javascript,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf,javax.xml.ws,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.jaxws.context,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.binding,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.configuration,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.frontend,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.jaxb,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.activation,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.xml.sax,javax.wsdl.xml,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.ws.commons.schema.resolver,org.apache.xml.resolver.helpers,javax.annotation,org.apache.xml.resolver,org.apache.cxf.resource,org.apache.cxf,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,javax.xml.validation,org.apache.cxf.aegis.type,org.apache.cxf.aegis.type.java5,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.runtime'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer,org.omg.CORBA.portable,org.apache.cxf.service.model,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.binding.corba.types,org.apache.cxf.message,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.ws.policy,javax.xml.ws.wsaddressing,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.cxf.common.logging,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.io,javax.xml.ws.spi,org.apache.cxf,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.jaxrs,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2js.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=antlr)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api.impl.s2j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api.impl.s2j
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javanet.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javanet.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.core
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.ext
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.binary)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec.binary
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.interceptors)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.interceptors ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.runtime)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.runtime ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.types)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.types ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.utils)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.utils ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.wsdl)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.wsdl ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.service)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.service ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.types)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.types ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.idltypes)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.idltypes ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.toolspec.toolspecs)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.toolspec.toolspecs
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.idlpreprocessor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.idlpreprocessor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.idl)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.idl ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.wsdl)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.wsdl ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.utils)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.utils ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js.processor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js.processor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws.util)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws.util ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.javascript)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.javascript ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type.java5)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type.java5
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.TypeCodePackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.TypeCodePackage
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.portable)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.portable
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CosNaming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CosNaming
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer.POAPackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer.POAPackage
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.bundle/2.2.1' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.bundle' uri='../org/apache/cxf/cxf-bundle/2.2.1/cxf-bundle-2.2.1.jar' version='2.2.1'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    4460023
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.bundle'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='javax.net.ssl,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.helpers,org.apache.neethi,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.ws.rs,javax.servlet.http,org.apache.cxf.jaxrs.model,javax.ws.rs.ext,javax.servlet,javax.ws.rs.core,org.apache.cxf.jaxrs.ext,org.apache.cxf.common.util,javax.activation,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.helpers,org.apache.cxf.transport.servlet,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,org.apache.cxf.ws.addressing,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.jaxrs.impl.tl,org.apache.cxf.jaxrs.utils.multipart'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.utils'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.databinding,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.binding.corba,javax.xml.stream,org.apache.cxf.binding.corba.types,org.apache.cxf.binding.corba.wsdl,org.apache.cxf.common.util,javax.xml.namespace,org.objectweb.asm,org.omg.CORBA,org.apache.cxf.common.logging,javax.wsdl,com.ibm.wsdl,org.apache.commons.codec,org.apache.commons.codec.binary,org.apache.ws.commons.schema,org.omg.CORBA.portable,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.corba.interceptors,org.omg.CosNaming,org.omg.PortableServer'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.jws.soap,javax.jws,javax.xml.ws,org.apache.cxf.tools.util,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.common.i18n,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.common,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.service.model,org.springframework.context,org.apache.cxf.tools.java2wsdl.generator,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.trust'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.xml.security.keys.content.keyvalues,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,org.apache.cxf.service,javax.security.auth.callback,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,org.apache.cxf.configuration,org.apache.cxf.common.classloader,org.apache.ws.security.conversation,org.apache.ws.security.conversation.dkalgo,org.apache.cxf,org.apache.ws.security.processor,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.ws.security.tokenstore'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.wsdlto.core,javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,org.apache.cxf.common,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.types'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.service.model,org.omg.CORBA,javax.xml.stream.events,org.apache.cxf.binding.corba.utils,org.apache.cxf.binding.corba.wsdl,org.omg.CORBA.portable,org.apache.cxf.binding.corba.runtime,org.apache.cxf.binding.corba,javax.xml.stream,org.apache.ws.commons.schema,javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.wsdl11,org.apache.commons.codec.binary'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.helpers,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.toolspec.toolspecs'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.net.ssl,javax.security.auth.x500,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.configuration.security,org.apache.cxf.transport.http,javax.servlet.http,org.apache.cxf.security.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.configuration.security,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf.jaxws.handler,javax.xml.ws,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.stream,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.staxutils,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.namespace,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.context,org.apache.cxf.common.logging,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap,org.apache.cxf.io,javax.xml.bind,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='javax.xml.namespace,org.apache.ws.security.components.crypto,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.ws.security.handler,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security,org.apache.cxf.endpoint,org.apache.cxf.ws.security.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.common.classloader,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,javax.xml.stream,org.apache.cxf.helpers,org.apache.ws.security.message,org.apache.cxf.ws.security.wss4j.policyhandlers,org.apache.cxf.binding.soap.saaj,org.apache.cxf.security,javax.security.auth.callback,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.ws.security.util,org.apache.ws.security.message.token,javax.xml.transform.dom,org.apache.ws.security.processor,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.common.util,javax.annotation,javax.xml.parsers,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.databinding,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.extension,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management,org.apache.cxf.buslifecycle'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.apache.cxf.common.logging,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.java2wsdl.processor.internal.simple,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.addressing.v200408,javax.xml.bind.annotation,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.addressing,org.apache.cxf.helpers,org.apache.cxf.ws.rm.manager,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.policy,javax.xml.datatype,javax.xml.bind,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.service.invoker,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.binding.soap.model,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.ws.rm.soap,javax.annotation,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,javax.activation,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.interceptor,javax.xml.transform,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.databinding.source,org.apache.cxf.attachment,javax.xml.ws,org.apache.cxf.helpers,org.apache.cxf.common.logging,javax.xml.transform.stream,javax.xml.stream,javax.mail.util,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.common.i18n,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.service,org.apache.cxf.phase,javax.imageio,org.apache.cxf.binding.soap.model,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.jaxb,javax.imageio.stream,javax.xml.bind,org.apache.cxf.common.classloader,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,org.apache.cxf.service.model,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.aegis,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.jaxrs.utils.schemas,javax.ws.rs,javax.xml.validation,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.jaxrs.ext,org.apache.cxf.aegis.type,javax.xml.namespace,org.apache.cxf.staxutils,javax.xml.stream,org.apache.abdera.parser,org.apache.abdera.model,org.apache.abdera,org.apache.abdera.writer,org.apache.cxf.helpers,org.apache.cxf.jaxrs.impl,org.apache.cxf.jaxrs.utils.multipart,org.apache.cxf.jaxrs.ext.multipart,javax.xml.transform,javax.xml.transform.stream,org.codehaus.jettison.mapped,org.codehaus.jettison,javax.activation,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.client,org.apache.cxf.endpoint,javax.xml.transform.dom,org.apache.cxf.jaxrs.ext.xml,javax.xml.parsers,org.w3c.dom,org.apache.xmlbeans'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.service,javax.activation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.springframework.context.support,org.apache.cxf.bus.spring,org.apache.cxf.javascript.service,org.apache.cxf.common,org.apache.cxf.tools.common,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.endpoint,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.springframework.beans.factory.support,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.java2wsdl.processor.internal,org.springframework.beans.factory.xml,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf,org.apache.cxf.wsdl,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.plugin,javax.xml.bind,javax.xml.datatype'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model,javax.wsdl,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.attachment'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.common.logging,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf,javax.xml.stream,org.w3c.dom.ls,javax.wsdl.extensions,javax.wsdl.extensions.mime,org.apache.cxf.tools.util,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.resource,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,javax.xml.parsers,javax.xml.stream.events,javax.xml.namespace,org.apache.cxf.common.util,org.apache.cxf.helpers,javax.wsdl.extensions.soap,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.wsdl11,org.apache.cxf.catalog,org.apache.cxf.wsdl,javax.xml.xpath,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.tools.common.extensions.soap,javax.jws.soap'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.wsdl'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.tools.corba.common,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.w3c.dom,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers,org.apache.ws.commons.schema.utils,org.apache.cxf.common.util,org.apache.cxf.tools.corba.common.idltypes,org.apache.cxf.tools.corba.utils,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.stream,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.common.util,org.w3c.dom,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,javax.xml.stream,org.apache.cxf.interceptor,org.apache.cxf.common.logging,org.apache.cxf.transport,org.apache.cxf.continuations,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.wsdl,org.apache.cxf.tools.common,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='javax.activation,org.apache.cxf.io,org.apache.cxf.helpers,org.apache.cxf.message,javax.mail.internet,javax.mail'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transport,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.helpers,javax.wsdl.extensions,javax.xml.namespace,org.apache.cxf.service.model,org.xml.sax,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.common.logging,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common'/>
    <p n='uses' v='org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.tools.common,org.xml.sax,org.apache.cxf.tools.util,javax.wsdl,javax.wsdl.extensions,javax.wsdl.xml,com.ibm.wsdl.extensions,com.ibm.wsdl,javax.wsdl.extensions.schema,org.w3c.dom,com.ibm.wsdl.util.xml,com.ibm.wsdl.xml,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema,org.apache.ws.commons.schema.constants'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.management,org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.message,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.staxutils,org.apache.cxf.interceptor,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.ws.commons.schema,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.message,org.codehaus.jra'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.tools.common.model,org.apache.cxf.common.util,javax.xml.namespace,javax.xml.ws,org.apache.cxf.service.model,javax.jws,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,org.apache.ws.commons.schema.resolver,org.xml.sax,org.apache.ws.commons.schema.utils,javax.xml.transform,org.apache.cxf.common.i18n,org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='uses' v='javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.utils,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.idl'/>
    <p n='uses' v='org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.tools.corba.common,javax.wsdl,antlr.collections,javax.wsdl.extensions,org.apache.cxf.helpers,org.apache.ws.commons.schema.constants,antlr.collections.impl,antlr,org.apache.cxf.tools.common,org.apache.cxf.tools.corba.idlpreprocessor,org.apache.cxf.tools.util,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.utils,javax.xml.parsers,org.w3c.dom,javax.xml.bind,javax.wsdl.factory,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.logging,org.xml.sax,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='javax.xml.stream,org.apache.cxf.common,javax.xml.namespace,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,org.apache.cxf.helpers,javax.xml.namespace,org.apache.cxf.common.util,org.springframework.beans.factory,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.xml.sax,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.namespace,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,javax.wsdl,javax.wsdl.xml,javax.wsdl.factory,org.w3c.dom.ls,org.apache.cxf.common.logging,org.w3c.dom.bootstrap,javax.xml.xpath'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,javax.wsdl,javax.jws.soap,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.ws.commons.schema,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.jaxb,javax.xml.ws,org.apache.ws.commons.schema.constants'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.databinding,org.apache.cxf,org.apache.cxf.interceptor,org.apache.cxf.service,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.common.xmlschema,org.w3c.dom,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.service.invoker,org.apache.cxf.frontend,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.binding,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,javax.wsdl,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf.clustering,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.annotation,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.jaxb,javax.xml.datatype,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.namespace,org.apache.neethi,org.w3c.dom,org.apache.cxf.extension,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf,org.xml.sax,javax.xml.parsers,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf.ws.policy.builder.primitive,org.springframework.context,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.feature,org.springframework.beans'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,javax.servlet,org.apache.cxf.security,org.apache.cxf.transport,org.apache.cxf.io,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,org.apache.cxf.common.util,org.apache.cxf.transport.https,org.apache.cxf.ws.policy,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.service.model,org.apache.cxf.configuration,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.helpers,javax.wsdl.extensions.soap,javax.wsdl.extensions.http,org.apache.cxf.wsdl.http,javax.wsdl,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.workqueue,org.apache.cxf.version,javax.net.ssl,org.apache.cxf.transports.http,org.apache.cxf.catalog,javax.wsdl.extensions.soap12,javax.wsdl.factory,javax.xml.parsers,javax.wsdl.extensions.schema,javax.xml.stream,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.wsdl.extensions,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.helpers,org.apache.cxf.binding.xml.interceptor,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.ws.commons.schema,javax.xml.transform,javax.xml.transform.dom'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.namespace,org.apache.cxf.service.model,javax.wsdl,org.apache.cxf.ws.policy.attachment,org.w3c.dom,org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.attachment,org.apache.cxf.message,javax.mail.internet,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.message,org.apache.cxf.interceptor,javax.annotation,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.transport.local'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.endpoint,javax.xml.ws.handler.soap,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.jaxws.handler,javax.xml.ws,org.apache.cxf.helpers,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.staxutils,javax.xml.stream,javax.xml.ws.soap,javax.xml.namespace,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.context,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.bind,org.springframework.util,org.springframework.beans.factory,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.springframework.beans,org.springframework.context,org.springframework.beans.factory.wiring,org.apache.cxf.extension,org.apache.cxf.configuration'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.interceptor,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.phase,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.jaxrs.ext,javax.xml.stream.events,javax.ws.rs.ext,org.apache.cxf.io,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf.catalog,org.apache.cxf.resource,org.apache.cxf,javax.wsdl,javax.xml.transform.dom,javax.wsdl.extensions,javax.xml.namespace,javax.wsdl.extensions.schema,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.helpers,org.apache.cxf.common,javax.wsdl.factory,javax.xml.parsers,org.apache.cxf.wsdl,com.ibm.wsdl.extensions.schema,org.apache.cxf.binding,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.service,com.ibm.wsdl.extensions.soap,javax.annotation,javax.wsdl.extensions.mime,javax.xml.bind,javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12,org.apache.cxf.transport,org.apache.cxf.service.factory'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.tokenstore'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.ws.security.message.token,javax.xml.namespace,org.apache.ws.security.components.crypto,org.w3c.dom,javax.xml.datatype,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.wsdl'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.wsdl,javax.wsdl.extensions,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.w3c.dom,javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba'/>
    <p n='uses' v='org.apache.cxf.tools.corba.processors.idl,org.apache.cxf.tools.common,org.apache.cxf.tools.corba.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.corba.processors.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.message,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.attachment,org.apache.cxf.binding,org.apache.cxf.configuration.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.xml,org.apache.cxf.staxutils,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.service'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.soap,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.apache.cxf.configuration.security,org.mortbay.jetty.security,javax.net.ssl,org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.mortbay.jetty'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.transport,org.apache.cxf.interceptor,javax.activation,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.helpers,org.apache.cxf.service,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.w3c.dom,javax.xml.namespace,org.apache.cxf.tools.common.dom,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.jdom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean,org.apache.cxf.helpers,javax.management.remote'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.idltypes'/>
    <p n='uses' v='org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.idlpreprocessor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.core.io,org.springframework.beans.factory.xml,org.junit,org.apache.cxf,org.springframework.context,org.springframework.context.support,javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.helpers,org.xml.sax,org.springframework.beans,org.apache.cxf.bus.spring,org.apache.cxf.message,org.apache.cxf.transport,javax.wsdl.xml,org.apache.cxf.service.model,javax.wsdl.factory,org.apache.cxf.service,org.apache.cxf.wsdl11,javax.xml.stream,junit.framework,javax.xml.xpath,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.client'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,javax.ws.rs,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,javax.ws.rs.core,org.apache.cxf.helpers,org.apache.cxf.jaxrs.model,org.apache.cxf.service.model,org.apache.cxf.configuration.security,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.bus.spring,org.apache.cxf.jaxrs.ext.form'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.multipart'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.activation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.parsers,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.jdom,org.xml.sax,javax.xml.transform,javax.xml.transform.dom,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws.util'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.databinding,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis,org.apache.cxf.aegis.type.collection,org.apache.cxf.common.logging,javax.activation,org.w3c.dom,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema,org.apache.cxf.common.xmlschema,org.xml.sax,javax.xml.xpath,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.apache.cxf.continuations,org.mortbay.jetty,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.common.logging,org.w3c.dom,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.namespace,org.apache.cxf.transport,org.springframework.beans,org.springframework.context'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.util,com.sun.tools.xjc.api,org.xml.sax,org.apache.cxf.tools.common,com.sun.codemodel,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.helpers,org.apache.cxf.common,javax.xml.stream.util,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.ws.commons.schema.extensions,javax.xml.validation,com.sun.tools.xjc,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.staxutils,javax.xml.parsers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.namespace,org.apache.cxf.binding.xml.interceptor,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.springframework.core.io.support,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.context,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.core.io,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.resource,org.springframework.beans,org.springframework.beans.factory,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.springframework.context.event,org.apache.cxf,org.springframework.beans.factory.config,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.core,org.apache.cxf.extension,org.apache.cxf.configuration,org.apache.cxf.helpers,javax.xml.parsers,javax.xml.stream,javax.annotation,org.apache.cxf.common.injection,org.apache.cxf.feature,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common.model,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.ws,org.apache.cxf.tools.util,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.tools.common,javax.jws,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.schemas'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.validation,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.endpoint,org.apache.cxf.jaxws,org.apache.cxf,javax.xml.ws,org.apache.cxf.service.model,org.apache.cxf.service,javax.wsdl,javax.xml.ws.soap,javax.xml.namespace,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.jaxws.binding,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.wsdl,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.util,javax.jws,org.apache.cxf.jaxb,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.apache.cxf.frontend,org.apache.cxf.databinding,javax.xml.bind.annotation,org.apache.cxf.databinding.source,org.apache.cxf.wsdl11,org.apache.cxf.helpers,javax.xml.soap,javax.activation,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation,org.apache.cxf.common.util,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.datatype,javax.xml.bind.annotation.adapters,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.service,javax.xml.bind.attachment,javax.xml.validation,org.apache.cxf.jaxb.attachment,javax.xml.bind,javax.xml.transform.dom,javax.xml.transform,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.factory,org.apache.cxf.common.xmlschema,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,javax.xml.stream,org.apache.cxf.interceptor,javax.xml.transform.stream,org.apache.cxf.staxutils,org.apache.cxf.helpers,org.apache.ws.commons.schema.utils,org.apache.commons.lang.builder,org.apache.commons.lang,org.xml.sax,org.objectweb.asm,com.sun.xml.bind.marshaller'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management,org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.rm.persistence,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.w3c.dom,org.apache.cxf.transport.jms,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.util,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.staxutils,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j.policyhandlers'/>
    <p n='uses' v='org.apache.ws.security.message,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,javax.security.auth.callback,org.apache.cxf.endpoint,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.xpath,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.ws.security.conversation,org.apache.ws.security.handler,org.apache.cxf,org.apache.ws.security,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.common,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf.catalog,org.w3c.dom,org.apache.cxf.resource,org.apache.cxf.helpers,javax.wsdl,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl11,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.multipart'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.transport,org.apache.cxf.binding,org.apache.cxf.service,org.apache.cxf.common.i18n,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.validation,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.stream,org.apache.ws.commons.schema,org.apache.xmlbeans.impl.values,org.apache.cxf.common.util,org.apache.cxf.staxutils,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.ws.commons.schema.resolver,org.xml.sax,org.apache.xmlbeans.impl.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='org.apache.cxf.frontend,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.configuration.security,javax.net.ssl,javax.xml.stream,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.ws.policy.attachment.external,org.apache.cxf.ws.policy,org.springframework.beans,org.springframework.context,org.springframework.beans.factory,org.springframework.beans.factory.xml,org.springframework.beans.factory.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.jaxb.attachment,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.version,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.util,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.helpers,javax.xml.bind,org.junit,javax.xml.namespace,org.apache.cxf.tools.common.model,org.apache.cxf.test,org.apache.velocity.app,org.apache.velocity,org.apache.velocity.context'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.springframework.beans.factory.support,org.springframework.beans.factory.config,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.rm.policy,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.type,javax.xml.namespace,javax.xml.bind.annotation,org.apache.cxf.aegis.xml,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.bus,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.ws.commons.schema,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,javax.xml.xpath,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.catalog,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,javax.xml.stream,javax.wsdl.extensions,javax.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.form'/>
    <p n='uses' v='org.apache.cxf.jaxrs.impl,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.v200408'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource,javax.resource.spi,javax.xml.namespace,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.common.util,org.apache.ws.commons.schema,org.apache.ws.commons.schema.utils,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf,org.apache.cxf.service.model,javax.xml.namespace,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.annotation,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.configuration.spring,org.xml.sax,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf.transport,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.validation,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream,javax.xml.stream.events,org.apache.cxf.common.classloader,org.apache.cxf.feature,org.apache.cxf.attachment,javax.xml.xpath,org.apache.ws.commons.schema,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.frontend,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.service.invoker'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.utils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.javascript'/>
    <p n='uses' v='javax.wsdl,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.xmlschema,org.apache.cxf.common,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.endpoint,org.apache.cxf.javascript.service,org.apache.cxf.javascript,org.apache.cxf.javascript.types,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.message,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.helpers,org.apache.cxf.binding,org.apache.cxf.interceptor,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.transport,javax.wsdl,org.apache.ws.commons.schema,org.apache.cxf.binding.soap.model,org.apache.cxf.common.xmlschema,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,javax.wsdl.extensions.mime,org.apache.cxf.wsdl11,org.apache.cxf.wsdl,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.headers,org.apache.cxf.databinding,javax.wsdl.factory,javax.annotation,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.interceptors'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.binding.corba.utils,org.apache.cxf.binding.corba.wsdl,javax.xml.ws,javax.xml.bind.annotation,org.apache.cxf.transport,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing,org.omg.CORBA.portable'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.types'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.javascript,org.apache.cxf.common.i18n,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.binding.http,org.apache.cxf.service.model,org.codehaus.jra'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.common.i18n,javax.annotation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream,javax.xml.namespace,javax.xml.stream.events,org.apache.cxf.common.util,org.w3c.dom,javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,org.apache.cxf.common.logging,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.classloader,javax.xml.parsers,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.jaxws,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers,org.apache.cxf.frontend,org.apache.cxf.frontend.spring,org.apache.cxf.jaxws.support'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.namespace,javax.annotation,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='org.mortbay.jetty,org.apache.cxf.endpoint,org.mortbay.jetty.handler,org.apache.cxf.transports.http,javax.servlet.http,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,javax.servlet,org.apache.cxf.io,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transport.http,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations,org.mortbay.jetty.nio,org.apache.cxf.configuration.jsse,org.mortbay.thread,org.mortbay.jetty.security,org.apache.cxf.transport.https_jetty,javax.annotation,org.mortbay.jetty.servlet,org.apache.cxf.buslifecycle,javax.imageio'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='org.apache.cxf.attachment,javax.xml.bind.attachment,javax.xml.namespace,javax.activation,org.apache.cxf.interceptor,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.service.model,javax.xml.ws.soap,javax.xml.soap,org.apache.cxf.common.logging,org.apache.cxf.jaxws.binding,org.apache.cxf.binding.soap.model,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.binding.soap,org.apache.cxf.binding,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl11,org.apache.cxf.jaxb,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.invoker,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.util,repackage,org.apache.cxf.tools.common,org.apache.cxf.tools.util,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.xmlbeans.impl.schema,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.message,org.apache.cxf.jaxrs.utils,javax.servlet.http,javax.servlet,org.apache.cxf.jaxrs.provider,org.apache.cxf.ws.addressing,org.apache.cxf.security,org.apache.cxf.configuration.security,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.endpoint,org.apache.ws.commons.schema.utils,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf,org.apache.cxf.transports.http,org.apache.cxf.common.i18n,org.apache.cxf.transport,org.apache.cxf.javascript.service,org.apache.cxf.javascript.types,org.apache.cxf.transport.http,org.apache.cxf.databinding.source.mime,org.apache.cxf.aegis.type.mtom,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,org.apache.cxf.message,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.attachment,org.apache.cxf.aegis.util,javax.activation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.rm,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.neethi,javax.xml.bind,org.apache.cxf.ws.rm.soap,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.tools.util,javax.wsdl,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,javax.jws,org.apache.cxf.jaxb,org.apache.ws.commons.schema,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.wsdlto.core,javax.xml.ws,org.apache.ws.commons.schema.constants,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.helpers,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.wsdl.extensions,javax.wsdl.extensions.http,javax.jws.soap,javax.wsdl.extensions.mime'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.tools.validator.internal,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.wsdl.extensions,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.wsdl,org.apache.cxf.wsdl11,org.apache.cxf.tools.misc.processor.address,javax.wsdl.xml,javax.xml.namespace,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.util.date,org.w3c.dom,org.apache.cxf.aegis.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.model'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,org.apache.cxf.message,org.springframework.jms.core,javax.jms,org.apache.cxf.buslifecycle,org.springframework.jms.listener,org.apache.cxf.common.logging,org.springframework.jms,org.springframework.jms.support,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.apache.cxf.endpoint,org.apache.cxf.feature,org.springframework.transaction,org.springframework.jms.support.destination,org.springframework.core.task,org.springframework.jms.connection,org.springframework.beans.factory,org.springframework.jndi,org.apache.cxf.helpers,org.apache.cxf.transport.jms.continuations,org.apache.cxf.continuations,javax.naming,org.apache.cxf.io,javax.annotation,org.apache.cxf.security,org.springframework.jms.support.converter,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.common.i18n,org.xml.sax,javax.xml.parsers,org.w3c.dom,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.configuration,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.service.model,org.w3c.dom,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring,org.apache.cxf.extension,org.apache.cxf.ws.addressing,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.ws.policy.attachment,org.apache.neethi,org.springframework.core.io,org.apache.cxf,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers,org.xml.sax,org.apache.cxf.resource,javax.xml.xpath'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.jws,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.common.util,javax.wsdl,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,javax.wsdl.extensions.soap12,org.apache.cxf.common,javax.wsdl.extensions,javax.jws.soap,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.model,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,javax.jws,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.ws,org.apache.cxf.binding.corba.utils,org.apache.cxf.transport,org.apache.cxf.binding.corba.interceptors,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.io,org.omg.CORBA,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.CORBA.portable,org.apache.cxf.binding.corba.types,org.omg.PortableServer.POAPackage,org.omg.PortableServer,org.apache.cxf.binding.corba.runtime,org.apache.cxf.wsdl,org.omg.CORBA.TypeCodePackage'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='javax.xml.transform.dom,org.mozilla.javascript.xmlimpl,org.mozilla.javascript,javax.xml.namespace,org.w3c.dom,javax.xml.ws,javax.xml.transform.stream,org.mozilla.javascript.xml,org.apache.cxf,org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.transport.jms,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,javax.xml.ws,org.apache.cxf.service.model,org.apache.cxf.phase,javax.xml.ws.handler,org.apache.cxf.jaxws.context,javax.jws,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.common.util,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.resource,org.apache.cxf.common.injection,javax.xml.ws.soap,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.soap,org.apache.cxf.binding.soap,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.binding,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.interceptor,org.apache.cxf.jaxrs.utils,org.apache.cxf.service.invoker,org.apache.cxf.jaxrs.lifecycle,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.databinding,org.apache.cxf.configuration,org.apache.cxf.workqueue'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.annotation,javax.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.apache.cxf.aegis,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.resource,org.springframework.context.event,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.springframework.core.io,javax.naming,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transports.http,org.apache.cxf.wsdl.http,org.apache.cxf.interceptor,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.transport.http,org.apache.cxf.ws.addressing,javax.annotation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.soap,javax.xml.ws.handler,org.apache.cxf.headers,org.apache.cxf.endpoint,javax.xml.namespace,javax.activation,org.apache.cxf.service.invoker,org.w3c.dom,org.apache.cxf.jaxws.context,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.attachment,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.helpers,javax.xml.ws,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.binding.soap.saaj,org.apache.cxf.common.logging,javax.xml.ws.http,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.jaxws.support,javax.xml.bind,org.apache.cxf.databinding,org.apache.cxf.service.factory,org.apache.cxf.configuration,org.apache.cxf.common.util,org.apache.cxf,javax.xml.ws.wsaddressing,org.apache.cxf.service,org.apache.cxf.jaxws.binding.soap,javax.jws,org.apache.cxf.frontend,org.apache.cxf.jaxws.interceptors,org.apache.cxf.jaxws.handler,org.apache.cxf.resource,org.apache.cxf.common.injection,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.feature,javax.wsdl.extensions.soap12,javax.xml.ws.spi,org.apache.cxf.jaxb,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.wsdl.http,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.transport,javax.wsdl.extensions,org.apache.cxf.wsdl11,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema,org.apache.cxf.helpers,org.apache.xml.resolver.helpers,org.apache.cxf.common.logging,javax.annotation,org.apache.xml.resolver,org.apache.xml.resolver.tools'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.builders,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.common.util,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.wsdl.xml,org.apache.ws.commons.schema,javax.xml.namespace,javax.wsdl.factory,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.transport,org.apache.cxf.io,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing,org.apache.cxf.service.model,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.type.basic,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,javax.xml.parsers,org.apache.cxf.aegis.type.java5,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.aegis.xml,org.apache.cxf.common.i18n,org.apache.cxf.aegis.xml.stax'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.runtime'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer,org.apache.cxf.service.model,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.message,org.apache.cxf.binding.corba.types,javax.xml.stream,org.omg.CORBA.portable,javax.xml.stream.events'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.apache.cxf.binding.soap,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.beans'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.cxf.transport,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.policy,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.common.i18n,javax.xml.parsers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.objectweb.asm,org.apache.cxf.common.i18n,org.apache.cxf.common.logging,net.sf.cglib.proxy,org.apache.cxf.helpers,org.springframework.aop.framework,org.springframework.aop.support,org.springframework.aop,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.headers,org.apache.cxf.common.util,org.apache.cxf.databinding,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.helpers,org.w3c.dom,org.apache.cxf,javax.xml.parsers,javax.xml.xpath,org.apache.cxf.binding,org.apache.cxf.io,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='org.jdom,org.apache.cxf.staxutils,javax.xml.stream,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.util,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.message,org.apache.cxf.interceptor,org.apache.cxf.endpoint,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.workqueue,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.ws.addressing.policy,org.apache.cxf.phase,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.ws.policy,javax.xml.ws,org.apache.cxf.helpers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.v200408,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,javax.xml.ws.wsaddressing,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.ws.addressing.soap,org.apache.cxf.feature'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf,org.apache.cxf.configuration,org.apache.cxf.workqueue,org.apache.cxf.common.xmlschema'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.transform.dom,org.w3c.dom.ls,org.xml.sax,org.apache.cxf.resource,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream.util,javax.xml.bind.annotation,org.apache.cxf.common.classloader,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl.http,javax.wsdl.factory'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,org.apache.cxf.interceptor,org.w3c.dom,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple'/>
    <p n='uses' v='org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.tools.common.model,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.apache.cxf.ws.security.policy.model,org.apache.cxf.security.transport,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.net.ssl,org.apache.cxf.helpers,org.apache.ws.security.handler,org.apache.cxf.ws.security.wss4j,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.ws.security.trust,org.apache.cxf.ws.addressing,org.apache.cxf.ws.security.tokenstore,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.service.invoker,javax.xml.transform.dom,org.apache.ws.security.message.token,org.apache.xml.security.utils,org.apache.ws.security.util,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.binding.soap,org.apache.cxf.common.logging,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.ws.security,org.apache.cxf.service,org.apache.cxf.ws.addressing.policy,org.apache.cxf.ws.policy.builder.primitive,javax.xml.stream,org.apache.ws.security.conversation,org.apache.ws.security.conversation.dkalgo'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.common,org.apache.cxf.io,org.apache.cxf,javax.xml.ws.spi,javax.xml.ws.wsaddressing,javax.xml.bind,javax.xml.ws,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.servlet'/>
    <p n='uses' v='org.apache.cxf.transport.servlet,org.apache.cxf.jaxrs.utils,org.apache.cxf.endpoint,org.apache.commons.lang,org.apache.cxf.jaxrs.lifecycle,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema.extensions,javax.xml.namespace,org.apache.ws.commons.schema,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,javax.servlet.http,javax.servlet,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='org.apache.cxf,org.springframework.beans,org.apache.cxf.jaxrs.client,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.jaxrs,org.apache.cxf.common.util,javax.xml.namespace,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers,org.apache.cxf.service.model,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2js.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=antlr)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.core ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.ext ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.binary)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec.binary
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.interceptors ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.runtime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.runtime ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.types)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.types ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.service)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.service ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.types)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.types ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.client)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.client ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.form)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.form ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.schemas)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.schemas ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.idltypes)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.idltypes ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.toolspec.toolspecs)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.toolspec.toolspecs
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.idlpreprocessor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.idlpreprocessor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.idl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.idl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js.processor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js.processor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.javascript)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.javascript ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.interceptors
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.tokenstore)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.tokenstore ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.trust)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.trust ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j.policyhandlers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j.policyhandlers
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.conversation ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation.dkalgo)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.conversation.dkalgo ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content.keyvalues)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content.keyvalues
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.xmlimpl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.xmlimpl
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.TypeCodePackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.TypeCodePackage
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.portable)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.portable
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CosNaming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CosNaming
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer.POAPackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer.POAPackage
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle/2.1.6' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle' uri='../org/apache/cxf/cxf-bundle/2.1.6/cxf-bundle-2.1.6.jar' version='2.1.6'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    4343838
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.transport.servlet,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxrs.ext,org.xml.sax,javax.activation,org.w3c.dom,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.transport,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,com.ibm.wsdl,javax.xml.namespace,org.omg.PortableServer,org.apache.cxf.binding.corba.types,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.databinding,org.omg.CosNaming,org.apache.ws.commons.schema,org.omg.CORBA.portable,org.apache.cxf.service.model,org.objectweb.asm,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.corba.interceptors,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.apache.cxf.common,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.service.model,org.springframework.context,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.springframework.beans.factory.support,javax.jws.soap,org.apache.cxf.tools.java2wsdl.processor.internal,org.springframework.beans.factory.xml,javax.jws,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.xfire.aegis.type.java5'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.validator,org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.types'/>
    <p n='uses' v='javax.wsdl,javax.xml.stream.events,org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,javax.xml.namespace,org.omg.CORBA.portable,org.apache.cxf.service.model,org.omg.CORBA,org.apache.cxf.binding.corba.runtime,org.apache.cxf.binding.corba,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.wsdl11,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.toolspec.toolspecs'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.security.auth.callback,javax.xml.stream,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.ws.security.processor,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.java2wsdl.processor.internal.simple,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,javax.xml.parsers,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,javax.mail.util,org.apache.cxf.endpoint,javax.imageio,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.imageio.stream,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.xmlbeans,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.codehaus.jettison.mapped,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.jaxrs.utils.schemas,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.abdera.parser,org.apache.cxf.jaxrs.impl,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.abdera,org.apache.cxf.endpoint,org.codehaus.jettison,javax.activation,org.w3c.dom,org.apache.cxf.jaxrs.client,org.apache.abdera.writer,javax.xml.bind.annotation,org.apache.cxf.jaxrs.ext.multipart,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,org.apache.cxf.jaxrs.utils.multipart,javax.ws.rs.core,org.apache.cxf.aegis.type,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.javascript.service,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.common,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.endpoint,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.springframework.beans.factory.support,org.apache.cxf.common.xmlschema,org.springframework.beans.factory.xml,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.datatype,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.tools.plugin,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.xml.namespace,javax.activation,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.attachment,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.xml.stream.events,org.w3c.dom.ls,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,javax.wsdl.extensions.mime,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,javax.xml.transform.sax,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.wsdl'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.corba.common.idltypes,org.apache.ws.commons.schema,org.apache.cxf.tools.corba.common,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.corba.utils,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,org.apache.cxf,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,com.ibm.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util.xml,org.apache.cxf.tools.util,com.ibm.wsdl.xml,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,org.apache.cxf.tools.common,com.ibm.wsdl.extensions,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.constants'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.codehaus.jra,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.common.util,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.idl'/>
    <p n='uses' v='org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,antlr.collections.impl,javax.wsdl.factory,org.apache.cxf.tools.common,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.constants,org.apache.cxf.wsdl,antlr,javax.wsdl,org.apache.ws.commons.schema,org.apache.cxf.tools.corba.idlpreprocessor,org.apache.cxf.tools.corba.common,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,antlr.collections,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.bus.spring,org.apache.cxf.configuration.jsse.spring,org.apache.cxf.common.util,org.apache.cxf.transports.http_jetty.configuration,org.springframework.beans.factory,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='org.apache.cxf.common,org.apache.cxf.common.util,javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.bug671'/>
    <p n='uses' v='com.sun.tools.xjc,com.sun.xml.bind.api.impl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,javax.xml.bind.annotation.adapters,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.clustering,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common.model,org.apache.ws.commons.schema,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.version,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.attachment,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.mail.internet,org.apache.cxf.jaxrs.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.transport.local,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,org.apache.cxf.service,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,javax.annotation,org.apache.cxf.io,org.apache.cxf.jaxrs,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.common,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.wsdl'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.annotation,javax.xml.namespace,org.apache.cxf,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba'/>
    <p n='uses' v='org.apache.cxf.tools.corba.processors.idl,org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.corba.common,org.apache.cxf.tools.corba.processors.wsdl,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.apache.cxf.staxutils,org.jaxen.jdom,org.jdom.output,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.configuration.security,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.service'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.soap,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.idltypes'/>
    <p n='uses' v='org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.idlpreprocessor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.xml.sax,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.client'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.binding,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.jaxrs.ext.form,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.multipart'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.activation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws.util'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.xml.transform,org.apache.cxf.tools.common,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.xml.transform.dom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.schemas'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.validation,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.binding.xml,org.apache.cxf.feature,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.ws.soap,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.jaxws.binding.http,org.apache.cxf.databinding.source,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,com.sun.xml.bind.marshaller,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.objectweb.asm,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management,org.apache.cxf.management.annotation,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.multipart'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.xmlbeans.impl.values,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.xmlbeans.impl.schema,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.resource,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.jaxb.attachment,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.codehaus.xfire.aegis.type.java5,org.jdom,javax.xml.bind.annotation,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.catalog,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.form'/>
    <p n='uses' v='org.apache.cxf.jaxrs.impl,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.ws.commons.schema.utils,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.utils'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.javascript'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.javascript.service,org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.tools.common.toolspec,javax.wsdl,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,org.apache.cxf.javascript.types,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.interceptors'/>
    <p n='uses' v='org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.omg.CORBA.portable,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.types'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.codehaus.jra,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.binding.http'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.io,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.xml.namespace,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.util,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.w3c.dom,org.apache.cxf.tools.util,org.apache.xmlbeans.impl.schema,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,repackage,org.apache.cxf.tools.common,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.xb.substwsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.transport,org.apache.cxf.configuration.security,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.ws.addressing,org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.javascript.service,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.activation,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.jaxen,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.common,javax.wsdl.factory,org.apache.cxf.tools.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.misc.processor.address,org.xml.sax,javax.wsdl.xml,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.wsdl.extensions.mime,javax.xml.ws,org.apache.ws.commons.schema.constants,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.extensions.http,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.jaxen,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.jaxen.jdom'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms,org.springframework.jms.support,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.springframework.beans.factory,org.springframework.jms.connection,org.apache.cxf.wsdl,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.cxf.transport.jms.continuations,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,org.apache.cxf.security,org.apache.cxf.continuations,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba'/>
    <p n='uses' v='org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer.POAPackage,org.omg.PortableServer,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.binding,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.wsdl,org.omg.CORBA.TypeCodePackage,org.omg.CORBA.portable,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.omg.CORBA,org.apache.cxf.binding.corba.interceptors,javax.annotation,org.apache.cxf.io,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,org.mozilla.javascript,org.apache.cxf.jaxws,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.transport.jms,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.jaxws.context,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.ws.rs,org.apache.cxf.configuration,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.workqueue,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.wsdl.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.runtime'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer,org.omg.CORBA.portable,org.apache.cxf.service.model,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.binding.corba.types,org.apache.cxf.message,javax.annotation,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop,net.sf.cglib.proxy,org.springframework.aop.framework,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.ws.policy,javax.xml.ws.wsaddressing,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.common,org.apache.cxf.io,javax.xml.ws.spi,org.apache.cxf,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.jaxrs.client,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.jaxrs,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2js.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=antlr)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.api.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.api.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.core
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.ext
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.interceptors)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.interceptors ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.runtime)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.runtime ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.types)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.types ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.utils)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.utils ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.wsdl)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.wsdl ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.service)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.service ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.types)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.types ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.client)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.client ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.form)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.form ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.multipart)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.multipart ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.multipart)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.multipart ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.schemas)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.schemas ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.idltypes)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.idltypes ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.toolspec.toolspecs)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.toolspec.toolspecs
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.idlpreprocessor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.idlpreprocessor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.idl)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.idl ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.wsdl)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.wsdl ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.utils)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.utils ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js.processor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js.processor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws.util)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws.util ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.javascript)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.javascript ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.bug671)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.bug671 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type.java5)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type.java5
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.TypeCodePackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.TypeCodePackage
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.portable)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.portable
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CosNaming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CosNaming
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer.POAPackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer.POAPackage
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle/2.0.11' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle' uri='../org/apache/cxf/cxf-bundle/2.0.11/cxf-bundle-2.0.11.jar' version='2.0.11'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2992571
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.common.util,javax.jws,org.apache.cxf,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.security.auth.callback,javax.xml.stream,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.ws.security.processor,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,org.apache.cxf.jaxws.support,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.xml.transform.sax,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.datatype,org.apache.cxf.tools.util,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.tools.plugin,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.xml.stream.events,org.w3c.dom.ls,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,javax.wsdl.extensions.mime,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,javax.xml.transform.sax,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,org.xmlsoap.schemas.wsdl.http,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.codehaus.jra,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.transports.http_jetty.configuration,org.apache.cxf.configuration.spring,javax.xml.bind,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.xml.ws,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap,javax.jws.soap,javax.jws'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.version,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.transport.local,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxws.support,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.handler,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.configuration.security,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.databinding.source,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.jdom.output,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.common,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,com.sun.tools.xjc.api.impl.s2j,com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.xml.transform.dom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.headers,javax.xml.ws.handler,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.service,javax.wsdl,javax.activation,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,org.apache.cxf.databinding.source,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.resource,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.validation,javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.tools.ant.types,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.tools.ant,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.catalog,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.xml.sax,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.codehaus.jra,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.binding.http'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='javax.xml.namespace,javax.activation,org.apache.cxf.aegis,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.wsdl.extensions.mime,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.extensions.http,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.wsdl.factory,org.apache.cxf.tools.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.misc.processor.address,org.xml.sax,javax.wsdl.xml,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms,org.springframework.jms.support,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.ws.addressing,org.springframework.beans.factory,org.springframework.jms.connection,org.apache.cxf.wsdl,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.cxf.transport.jms.continuations,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,org.apache.cxf.security,org.apache.cxf.continuations,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,org.mozilla.javascript,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf,javax.xml.ws,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.transport.jms,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.jaxws.binding.soap,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.common.util.factory,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlsoap.schemas.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.aop,org.springframework.aop.framework,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.wsdl.extensions,javax.jws,org.apache.cxf,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util.factory'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf,org.apache.cxf.common.i18n,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api.impl.s2j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api.impl.s2j
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util.factory)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util.factory ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.bundle/2.2.2' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.bundle' uri='../org/apache/cxf/cxf-bundle/2.2.2/cxf-bundle-2.2.2.jar' version='2.2.2'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    4475876
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.bundle'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='javax.net.ssl,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.helpers,org.apache.neethi,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.ws.rs,javax.servlet.http,javax.ws.rs.ext,javax.servlet,javax.ws.rs.core,org.apache.cxf.jaxrs.ext,org.apache.cxf.common.util,javax.activation,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.helpers,org.apache.cxf.transport.servlet,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,org.apache.cxf.ws.addressing,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.jaxrs.impl.tl,org.apache.cxf.jaxrs.utils.multipart,org.w3c.dom,org.apache.cxf.jaxrs.lifecycle,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.utils'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.databinding,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.binding.corba,javax.xml.stream,org.apache.cxf.binding.corba.types,org.apache.cxf.binding.corba.wsdl,org.apache.cxf.common.util,javax.xml.namespace,org.objectweb.asm,org.omg.CORBA,org.apache.cxf.common.logging,javax.wsdl,com.ibm.wsdl,org.apache.commons.codec,org.apache.commons.codec.binary,org.apache.ws.commons.schema,org.omg.CORBA.portable,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.corba.interceptors,org.omg.CosNaming,org.omg.PortableServer'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.jws.soap,javax.jws,javax.xml.ws,org.apache.cxf.tools.util,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.common.i18n,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.common,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.service.model,org.springframework.context,org.apache.cxf.tools.java2wsdl.generator,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.trust'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.xml.security.keys.content.keyvalues,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,org.apache.cxf.service,javax.security.auth.callback,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,org.apache.cxf.configuration,org.apache.cxf.common.classloader,org.apache.ws.security.conversation,org.apache.ws.security.conversation.dkalgo,org.apache.cxf,org.apache.ws.security.processor,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.wsdl11,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.wsdlto.core,javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,org.apache.cxf.common,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.types'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.service.model,org.omg.CORBA,javax.xml.stream.events,org.apache.cxf.binding.corba.utils,org.apache.cxf.binding.corba.wsdl,org.omg.CORBA.portable,org.apache.cxf.binding.corba.runtime,org.apache.cxf.binding.corba,javax.xml.stream,org.apache.ws.commons.schema,javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.wsdl11,org.apache.commons.codec.binary'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.helpers,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.toolspec.toolspecs'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.net.ssl,javax.security.auth.x500,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.configuration.security,org.apache.cxf.transport.http,javax.servlet.http,org.apache.cxf.security.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.configuration.security,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.message,org.apache.cxf.jaxws.handler,org.apache.cxf.jaxws.handler.soap,javax.xml.ws,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding,org.apache.cxf.staxutils,javax.xml.stream,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.namespace,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.saaj,org.apache.cxf.transport,org.apache.cxf.jaxws.context,org.apache.cxf.common.logging,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap,org.apache.cxf.io,javax.xml.bind,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='javax.xml.namespace,org.apache.ws.security.components.crypto,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.ws.security.handler,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security,org.apache.cxf.endpoint,org.apache.cxf.ws.security.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.common.classloader,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,javax.xml.stream,org.apache.cxf.helpers,org.apache.ws.security.message,org.apache.cxf.ws.security.wss4j.policyhandlers,org.apache.cxf.binding.soap.saaj,org.apache.cxf.security,javax.security.auth.callback,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.ws.security.util,org.apache.ws.security.message.token,javax.xml.transform.dom,org.apache.ws.security.processor,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.common.util,javax.annotation,javax.xml.parsers,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.databinding,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.extension,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management,org.apache.cxf.buslifecycle'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.apache.cxf.common.logging,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.java2wsdl.processor.internal.simple,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.addressing.v200408,javax.xml.bind.annotation,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.addressing,org.apache.cxf.helpers,org.apache.cxf.ws.rm.manager,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.policy,javax.xml.datatype,javax.xml.bind,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.service.invoker,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.binding.soap.model,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.ws.rm.soap,javax.annotation,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.ws,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf.attachment,javax.activation,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,javax.xml.transform.sax,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.saaj,javax.imageio,org.apache.cxf.binding.soap.model,org.apache.cxf.common.i18n,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,javax.mail.util,javax.imageio.stream,javax.xml.bind,org.apache.cxf.common.classloader,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,org.apache.cxf.service.model,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.aegis,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.jaxrs.utils.schemas,javax.ws.rs,javax.xml.validation,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.jaxrs.ext,org.apache.cxf.aegis.type,javax.xml.namespace,org.apache.cxf.staxutils,javax.xml.stream,org.apache.abdera.parser,org.apache.abdera.model,org.apache.abdera,org.apache.abdera.writer,org.apache.cxf.helpers,org.apache.cxf.jaxrs.impl,org.apache.cxf.jaxrs.utils.multipart,org.apache.cxf.jaxrs.ext.multipart,javax.xml.transform,javax.xml.transform.stream,org.codehaus.jettison.mapped,org.codehaus.jettison,javax.activation,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.client,org.apache.cxf.endpoint,javax.xml.transform.dom,org.apache.cxf.jaxrs.ext.xml,javax.xml.parsers,org.w3c.dom,org.apache.xmlbeans,org.xml.sax,javax.xml.transform.sax'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.service,javax.activation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.springframework.context.support,org.apache.cxf.bus.spring,org.apache.cxf.javascript.service,org.apache.cxf.common,org.apache.cxf.tools.common,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.endpoint,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.springframework.beans.factory.support,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.java2wsdl.processor.internal,org.springframework.beans.factory.xml,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf,org.apache.cxf.wsdl,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.plugin,javax.xml.bind,javax.xml.datatype'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model,javax.wsdl,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.attachment'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.common.logging,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf,javax.xml.stream,org.w3c.dom.ls,javax.wsdl.extensions,javax.wsdl.extensions.mime,org.apache.cxf.tools.util,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.resource,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,javax.xml.parsers,javax.xml.stream.events,javax.xml.namespace,org.apache.cxf.common.util,org.apache.cxf.helpers,javax.wsdl.extensions.soap,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.wsdl11,org.apache.cxf.catalog,org.apache.cxf.wsdl,javax.xml.xpath,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.tools.common.extensions.soap,javax.jws.soap'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.wsdl'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.tools.corba.common,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.w3c.dom,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers,org.apache.ws.commons.schema.utils,org.apache.cxf.common.util,org.apache.cxf.tools.corba.common.idltypes,org.apache.cxf.tools.corba.utils,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.stream,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.common.util,org.w3c.dom,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,javax.xml.stream,org.apache.cxf.interceptor,org.apache.cxf.common.logging,org.apache.cxf.transport,org.apache.cxf.continuations,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.wsdl,org.apache.cxf.tools.common,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='javax.activation,org.apache.cxf.io,org.apache.cxf.helpers,org.apache.cxf.message,javax.mail.internet,javax.mail'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transport,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.helpers,javax.wsdl.extensions,javax.xml.namespace,org.apache.cxf.service.model,org.xml.sax,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.common.logging,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common'/>
    <p n='uses' v='org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.tools.common,org.xml.sax,org.apache.cxf.tools.util,javax.wsdl,javax.wsdl.extensions,javax.wsdl.xml,com.ibm.wsdl.extensions,com.ibm.wsdl,javax.wsdl.extensions.schema,org.w3c.dom,com.ibm.wsdl.util.xml,com.ibm.wsdl.xml,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema,org.apache.ws.commons.schema.constants'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.management,org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.message,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.staxutils,org.apache.cxf.interceptor,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.ws.commons.schema,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.message,org.codehaus.jra'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.tools.common.model,org.apache.cxf.common.util,javax.xml.namespace,javax.xml.ws,org.apache.cxf.service.model,javax.jws,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,org.apache.ws.commons.schema.resolver,org.xml.sax,org.apache.ws.commons.schema.utils,javax.xml.transform,org.apache.cxf.common.i18n,org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='uses' v='javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.utils,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.idl'/>
    <p n='uses' v='org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.tools.corba.common,javax.wsdl,antlr.collections,javax.wsdl.extensions,org.apache.cxf.helpers,org.apache.ws.commons.schema.constants,antlr.collections.impl,antlr,org.apache.cxf.tools.common,org.apache.cxf.tools.corba.idlpreprocessor,org.apache.cxf.tools.util,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.utils,javax.xml.parsers,org.w3c.dom,javax.xml.bind,javax.wsdl.factory,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.logging,org.xml.sax,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='javax.xml.stream,org.apache.cxf.common,javax.xml.namespace,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,org.apache.cxf.helpers,javax.xml.namespace,org.apache.cxf.common.util,org.springframework.beans.factory,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.xml.sax,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.namespace,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,javax.wsdl,javax.wsdl.xml,javax.wsdl.factory,org.w3c.dom.ls,org.apache.cxf.common.logging,org.w3c.dom.bootstrap,javax.xml.xpath'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,javax.wsdl,javax.jws.soap,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.ws.commons.schema,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.jaxb,javax.xml.ws,org.apache.ws.commons.schema.constants'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.databinding,org.apache.cxf,org.apache.cxf.interceptor,org.apache.cxf.service,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.common.xmlschema,org.w3c.dom,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.service.invoker,org.apache.cxf.frontend,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.binding,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,javax.wsdl,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf.clustering,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs.core,javax.annotation,org.apache.cxf.jaxrs.impl.tl,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.jaxb,javax.xml.datatype,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.namespace,org.apache.neethi,org.w3c.dom,org.apache.cxf.extension,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf,org.xml.sax,javax.xml.parsers,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf.ws.policy.builder.primitive,org.springframework.context,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.feature,org.springframework.beans'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,javax.servlet,org.apache.cxf.security,org.apache.cxf.transport,org.apache.cxf.io,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,org.apache.cxf.common.util,org.apache.cxf.transport.https,org.apache.cxf.ws.policy,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.service.model,org.apache.cxf.configuration,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.helpers,javax.wsdl.extensions.soap,javax.wsdl.extensions.http,org.apache.cxf.wsdl.http,javax.wsdl,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.workqueue,org.apache.cxf.version,javax.net.ssl,org.apache.cxf.transports.http,org.apache.cxf.catalog,javax.wsdl.extensions.soap12,javax.wsdl.factory,javax.xml.parsers,javax.wsdl.extensions.schema,javax.xml.stream,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.wsdl.extensions,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.helpers,org.apache.cxf.binding.xml.interceptor,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.ws.commons.schema,javax.xml.transform,javax.xml.transform.dom'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.namespace,org.apache.cxf.service.model,javax.wsdl,org.apache.cxf.ws.policy.attachment,org.w3c.dom,org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='javax.servlet.http,javax.ws.rs.ext,javax.servlet,javax.ws.rs.core,org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.attachment,org.apache.cxf.message,javax.mail.internet,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.message,org.apache.cxf.interceptor,javax.annotation,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.transport.local'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.jaxws.handler,javax.xml.ws,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.interceptor,javax.xml.ws.soap,javax.xml.namespace,org.apache.cxf.binding.soap.saaj,org.apache.cxf.endpoint,org.apache.cxf.transport,org.apache.cxf.binding,org.apache.cxf.jaxws.context,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.bind,org.springframework.util,org.springframework.beans.factory,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.springframework.beans,org.springframework.context,org.springframework.beans.factory.wiring,org.apache.cxf.extension,org.apache.cxf.configuration'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.interceptor,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.phase,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.jaxrs.ext,javax.xml.stream.events,javax.ws.rs.ext,org.apache.cxf.io,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf.catalog,org.apache.cxf.resource,org.apache.cxf,javax.wsdl,javax.xml.transform.dom,javax.wsdl.extensions,javax.xml.namespace,javax.wsdl.extensions.schema,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.helpers,org.apache.cxf.common,javax.wsdl.factory,javax.xml.parsers,org.apache.cxf.wsdl,com.ibm.wsdl.extensions.schema,org.apache.cxf.binding,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.service,com.ibm.wsdl.extensions.soap,javax.annotation,javax.wsdl.extensions.mime,javax.xml.bind,javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12,org.apache.cxf.transport,org.apache.cxf.service.factory'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.tokenstore'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.ws.security.message.token,javax.xml.namespace,org.apache.ws.security.components.crypto,org.w3c.dom,javax.xml.datatype,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.wsdl'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.wsdl,javax.wsdl.extensions,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.w3c.dom,javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba'/>
    <p n='uses' v='org.apache.cxf.tools.corba.processors.idl,org.apache.cxf.tools.common,org.apache.cxf.tools.corba.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.corba.processors.wsdl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.message,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.attachment,org.apache.cxf.binding,org.apache.cxf.configuration.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.xml,org.apache.cxf.staxutils,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.service'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.soap,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.apache.cxf.configuration.security,org.mortbay.jetty.security,javax.net.ssl,org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.mortbay.jetty'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.transport,org.apache.cxf.interceptor,javax.activation,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.helpers,org.apache.cxf.service,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.w3c.dom,javax.xml.namespace,org.apache.cxf.tools.common.dom,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.jdom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean,org.apache.cxf.helpers,javax.management.remote'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.idltypes'/>
    <p n='uses' v='org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.idlpreprocessor'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.core.io,org.springframework.beans.factory.xml,org.junit,org.apache.cxf,org.springframework.context,org.springframework.context.support,javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.helpers,org.xml.sax,org.springframework.beans,org.apache.cxf.bus.spring,org.apache.cxf.message,org.apache.cxf.transport,javax.wsdl.xml,org.apache.cxf.service.model,javax.wsdl.factory,org.apache.cxf.service,org.apache.cxf.wsdl11,javax.xml.stream,junit.framework,javax.xml.xpath,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.client'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.jaxrs.provider,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.helpers,org.apache.cxf.service.model,org.apache.cxf.configuration.security,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.bus.spring,org.apache.cxf.jaxrs.ext.form'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.multipart'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.activation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.parsers,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.jdom,org.xml.sax,javax.xml.transform,javax.xml.transform.dom,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws.util'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.databinding,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis,org.apache.cxf.aegis.type.collection,org.apache.cxf.common.logging,javax.activation,org.w3c.dom,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema,org.apache.cxf.common.xmlschema,org.xml.sax,javax.xml.xpath,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.apache.cxf.continuations,org.mortbay.jetty,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.common.logging,org.w3c.dom,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.namespace,org.apache.cxf.transport,org.springframework.beans,org.springframework.context'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.util,com.sun.tools.xjc.api,org.xml.sax,org.apache.cxf.tools.common,com.sun.codemodel,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.helpers,org.apache.cxf.common,javax.xml.stream.util,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.ws.commons.schema.extensions,javax.xml.transform,javax.xml.validation,com.sun.tools.xjc,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.staxutils,javax.xml.parsers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.namespace,org.apache.cxf.binding.xml.interceptor,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.springframework.core.io.support,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.context,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.core.io,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.resource,org.springframework.beans,org.springframework.beans.factory,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.springframework.context.event,org.apache.cxf,org.springframework.beans.factory.config,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.core,org.apache.cxf.extension,org.apache.cxf.configuration,org.apache.cxf.helpers,javax.xml.parsers,javax.xml.stream,javax.annotation,org.apache.cxf.common.injection,org.apache.cxf.feature,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common.model,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.ws,org.apache.cxf.tools.util,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.tools.common,javax.jws,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.schemas'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.validation,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.endpoint,org.apache.cxf.jaxws,org.apache.cxf,javax.xml.ws,org.apache.cxf.service.model,org.apache.cxf.service,javax.xml.namespace,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.wsdl,javax.wsdl,javax.xml.ws.soap,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.binding,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.util,javax.jws,org.apache.cxf.jaxb,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.frontend,org.apache.cxf.databinding,org.apache.cxf.databinding.source,javax.xml.bind.annotation,org.apache.cxf.wsdl11,org.apache.cxf.helpers,javax.xml.soap,javax.activation,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation,org.apache.cxf.common.util,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.datatype,javax.xml.bind.annotation.adapters,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.service,javax.xml.bind.attachment,javax.xml.validation,org.apache.cxf.jaxb.attachment,javax.xml.bind,javax.xml.transform.dom,javax.xml.transform,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.factory,org.apache.cxf.common.xmlschema,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,javax.xml.stream,org.apache.cxf.interceptor,javax.xml.transform.stream,org.apache.cxf.staxutils,org.apache.cxf.helpers,org.apache.ws.commons.schema.utils,org.apache.commons.lang.builder,org.apache.commons.lang,org.xml.sax,org.objectweb.asm,com.sun.xml.bind.marshaller'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management,org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.rm.persistence,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.w3c.dom,org.apache.cxf.transport.jms,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.util,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.staxutils,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j.policyhandlers'/>
    <p n='uses' v='org.apache.ws.security.message,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,javax.security.auth.callback,org.apache.cxf.endpoint,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.xpath,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.ws.security.conversation,org.apache.ws.security.handler,org.apache.cxf,org.apache.ws.security,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.common,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf.catalog,org.w3c.dom,org.apache.cxf.resource,org.apache.cxf.helpers,javax.wsdl,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl11,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.multipart'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.transport,org.apache.cxf.binding,org.apache.cxf.service,org.apache.cxf.common.i18n,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.validation,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.stream,org.apache.ws.commons.schema,org.apache.xmlbeans.impl.values,org.apache.cxf.common.util,org.apache.cxf.staxutils,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.ws.commons.schema.resolver,org.xml.sax,org.apache.xmlbeans.impl.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='org.apache.cxf.frontend,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.configuration.security,javax.net.ssl,javax.xml.stream,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.ws.policy.attachment.external,org.apache.cxf.ws.policy,org.springframework.beans,org.springframework.context,org.springframework.beans.factory,org.springframework.beans.factory.xml,org.springframework.beans.factory.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.jaxb.attachment,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.version,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.util,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.helpers,javax.xml.bind,org.junit,javax.xml.namespace,org.apache.cxf.tools.common.model,org.apache.cxf.test,org.apache.velocity.app,org.apache.velocity,org.apache.velocity.context'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.springframework.beans.factory.support,org.springframework.beans.factory.config,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.rm.policy,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.type,javax.xml.namespace,javax.xml.bind.annotation,org.apache.cxf.aegis.xml,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.bus,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.ws.commons.schema,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,javax.xml.xpath,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.catalog,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,javax.xml.stream,javax.wsdl.extensions,javax.wsdl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.form'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.impl,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.v200408'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource,javax.resource.spi,javax.xml.namespace,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.common.util,org.apache.ws.commons.schema,org.apache.ws.commons.schema.utils,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf,org.apache.cxf.service.model,javax.xml.namespace,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.annotation,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.configuration.spring,org.xml.sax,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf.transport,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.databinding,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.validation,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream,javax.xml.stream.events,org.apache.cxf.common.classloader,org.apache.cxf.feature,org.apache.cxf.attachment,javax.xml.xpath,org.apache.ws.commons.schema,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.frontend,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.service.invoker'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.utils'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.javascript'/>
    <p n='uses' v='javax.wsdl,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.xmlschema,org.apache.cxf.common,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.endpoint,org.apache.cxf.javascript.service,org.apache.cxf.javascript,org.apache.cxf.javascript.types,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.message,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.helpers,org.apache.cxf.binding,org.apache.cxf.interceptor,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.transport,javax.wsdl,org.apache.ws.commons.schema,org.apache.cxf.binding.soap.model,org.apache.cxf.common.xmlschema,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,javax.wsdl.extensions.mime,org.apache.cxf.wsdl,org.apache.cxf.wsdl11,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.headers,org.apache.cxf.databinding,javax.wsdl.factory,javax.annotation,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.interceptors'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.binding.corba.utils,org.apache.cxf.binding.corba.wsdl,javax.xml.ws,javax.xml.bind.annotation,org.apache.cxf.transport,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing,org.omg.CORBA.portable'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.types'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.javascript,org.apache.cxf.common.i18n,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.binding.http,org.apache.cxf.service.model,org.codehaus.jra'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.common.i18n,javax.annotation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream,javax.xml.namespace,javax.xml.stream.events,org.apache.cxf.common.util,org.w3c.dom,javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,org.apache.cxf.common.logging,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.classloader,javax.xml.parsers,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.jaxws,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers,org.apache.cxf.frontend,org.apache.cxf.frontend.spring,org.apache.cxf.jaxws.support'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.namespace,javax.annotation,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='org.mortbay.jetty,org.apache.cxf.endpoint,org.mortbay.jetty.handler,org.apache.cxf.transports.http,javax.servlet.http,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,javax.servlet,org.apache.cxf.io,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transport.http,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations,org.mortbay.jetty.nio,org.apache.cxf.configuration.jsse,org.mortbay.thread,org.mortbay.jetty.security,org.apache.cxf.transport.https_jetty,javax.annotation,org.mortbay.jetty.servlet,org.apache.cxf.buslifecycle,javax.imageio'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='org.apache.cxf.attachment,javax.xml.bind.attachment,javax.xml.namespace,javax.activation,org.apache.cxf.interceptor,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.service.model,javax.xml.ws.soap,javax.xml.soap,org.apache.cxf.common.logging,org.apache.cxf.jaxws.binding,org.apache.cxf.binding.soap.model,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.binding.soap,org.apache.cxf.binding,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl11,org.apache.cxf.jaxb,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.invoker,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.util,repackage,org.apache.cxf.tools.common,org.apache.cxf.tools.util,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.xmlbeans.impl.schema,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.utils,org.apache.cxf.message,javax.servlet.http,javax.servlet,org.apache.cxf.jaxrs.provider,org.apache.cxf.phase,org.apache.cxf.ws.addressing,org.apache.cxf.security,org.apache.cxf.configuration.security,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.endpoint,org.apache.ws.commons.schema.utils,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf,org.apache.cxf.transports.http,org.apache.cxf.common.i18n,org.apache.cxf.transport,org.apache.cxf.javascript.service,org.apache.cxf.javascript.types,org.apache.cxf.transport.http,org.apache.cxf.databinding.source.mime,org.apache.cxf.aegis.type.mtom,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,org.apache.cxf.message,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.attachment,org.apache.cxf.aegis.util,javax.activation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.rm,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.neethi,javax.xml.bind,org.apache.cxf.ws.rm.soap,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.tools.util,javax.wsdl,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,javax.jws,org.apache.cxf.jaxb,org.apache.ws.commons.schema,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.wsdlto.core,org.apache.ws.commons.schema.constants,javax.xml.ws,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.helpers,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.wsdl.extensions,javax.wsdl.extensions.http,javax.jws.soap,javax.wsdl.extensions.mime'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.tools.validator.internal,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.wsdl.extensions,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.wsdl,org.apache.cxf.wsdl11,org.apache.cxf.tools.misc.processor.address,javax.wsdl.xml,javax.xml.namespace,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.util.date,org.w3c.dom,org.apache.cxf.aegis.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.model'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,org.apache.cxf.message,org.springframework.jms.core,javax.jms,org.apache.cxf.buslifecycle,org.springframework.jms.listener,org.apache.cxf.common.logging,org.springframework.jms,org.springframework.jms.support,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf,org.apache.cxf.ws.addressing,org.springframework.beans.factory.annotation,org.apache.cxf.endpoint,org.apache.cxf.feature,org.springframework.transaction,org.springframework.jms.support.destination,org.springframework.core.task,org.springframework.jms.connection,org.springframework.beans.factory,org.springframework.jndi,org.apache.cxf.helpers,org.apache.cxf.transport.jms.continuations,org.apache.cxf.continuations,javax.naming,org.apache.cxf.io,javax.annotation,org.apache.cxf.security,org.springframework.jms.support.converter,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.common.i18n,org.xml.sax,javax.xml.parsers,org.w3c.dom,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.configuration,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.service.model,org.w3c.dom,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring,org.apache.cxf.extension,org.apache.cxf.ws.addressing,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.ws.policy.attachment,org.apache.neethi,org.springframework.core.io,org.apache.cxf,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers,org.xml.sax,org.apache.cxf.resource,javax.xml.xpath'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.jws,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.common.util,javax.wsdl,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,javax.wsdl.extensions.soap12,org.apache.cxf.common,javax.wsdl.extensions,javax.jws.soap,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.model,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,javax.jws,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.ws,org.apache.cxf.binding.corba.utils,org.apache.cxf.transport,org.apache.cxf.binding.corba.interceptors,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.io,org.omg.CORBA,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.CORBA.portable,org.apache.cxf.binding.corba.types,org.omg.PortableServer.POAPackage,org.omg.PortableServer,org.apache.cxf.binding.corba.runtime,org.apache.cxf.wsdl,org.omg.CORBA.TypeCodePackage'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='javax.xml.transform.dom,org.mozilla.javascript.xmlimpl,org.mozilla.javascript,javax.xml.namespace,org.w3c.dom,javax.xml.ws,javax.xml.transform.stream,org.mozilla.javascript.xml,org.apache.cxf,org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.cxf.message,org.apache.cxf.transport.jms,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,javax.xml.ws,org.apache.cxf.service.model,org.apache.cxf.phase,javax.xml.ws.handler,org.apache.cxf.jaxws.context,javax.jws,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.common.util,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.resource,org.apache.cxf.common.injection,javax.xml.ws.soap,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.soap,org.apache.cxf.binding.soap,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.binding,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.interceptor,org.apache.cxf.service.invoker,org.apache.cxf.jaxrs.lifecycle,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.databinding,org.apache.cxf.configuration,org.apache.cxf.workqueue'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.annotation,javax.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.apache.cxf.aegis,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.resource,org.springframework.context.event,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.springframework.core.io,javax.naming,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transports.http,org.apache.cxf.wsdl.http,org.apache.cxf.interceptor,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.transport.http,org.apache.cxf.ws.addressing,javax.annotation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.soap,javax.xml.ws.handler,org.apache.cxf.headers,org.apache.cxf.endpoint,javax.xml.namespace,javax.activation,org.apache.cxf.service.invoker,org.w3c.dom,org.apache.cxf.jaxws.context,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.attachment,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.helpers,org.apache.cxf.common.logging,javax.xml.ws.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.jaxws.support,org.apache.cxf.binding.soap.saaj,javax.xml.bind,javax.xml.ws,org.apache.cxf.databinding,org.apache.cxf.service.factory,org.apache.cxf.configuration,org.apache.cxf.common.util,org.apache.cxf,javax.xml.ws.wsaddressing,org.apache.cxf.service,org.apache.cxf.jaxws.binding.soap,javax.jws,org.apache.cxf.frontend,org.apache.cxf.jaxws.handler,org.apache.cxf.resource,org.apache.cxf.common.injection,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.feature,javax.wsdl.extensions.soap12,javax.xml.ws.spi,org.apache.cxf.jaxb,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.wsdl.http,org.apache.cxf.databinding.source,org.apache.cxf.transport,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.wsdl11,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema,org.apache.cxf.helpers,org.apache.xml.resolver.helpers,org.apache.cxf.common.logging,javax.annotation,org.apache.xml.resolver,org.apache.xml.resolver.tools'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.builders,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.common.util,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.wsdl.xml,org.apache.ws.commons.schema,javax.xml.namespace,javax.wsdl.factory,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.transport,org.apache.cxf.io,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing,org.apache.cxf.service.model,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.type.basic,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,javax.xml.parsers,org.apache.cxf.aegis.type.java5,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.aegis.xml,org.apache.cxf.common.i18n,org.apache.cxf.aegis.xml.stax'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.runtime'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer,org.apache.cxf.service.model,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.message,org.apache.cxf.binding.corba.types,javax.xml.stream,org.omg.CORBA.portable,javax.xml.stream.events'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.apache.cxf.binding.soap,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.beans'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.cxf.transport,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.policy,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.common.i18n,javax.xml.parsers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.objectweb.asm,org.apache.cxf.common.i18n,org.apache.cxf.common.logging,net.sf.cglib.proxy,org.apache.cxf.helpers,org.springframework.aop.framework,org.springframework.aop.support,org.springframework.aop,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.headers,org.apache.cxf.common.util,org.apache.cxf.databinding,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.helpers,org.w3c.dom,org.apache.cxf,javax.xml.parsers,javax.xml.xpath,org.apache.cxf.binding,org.apache.cxf.io,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='org.jdom,org.apache.cxf.staxutils,javax.xml.stream,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.util,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.message,org.apache.cxf.interceptor,org.apache.cxf.endpoint,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.workqueue,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.ws.addressing.policy,org.apache.cxf.phase,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.ws.policy,javax.xml.ws,org.apache.cxf.helpers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.v200408,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,javax.xml.ws.wsaddressing,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.ws.addressing.soap,org.apache.cxf.feature'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf,org.apache.cxf.configuration,org.apache.cxf.workqueue,org.apache.cxf.common.xmlschema'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.transform.dom,org.w3c.dom.ls,org.xml.sax,org.apache.cxf.resource,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream.util,javax.xml.bind.annotation,org.apache.cxf.common.classloader,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl.http,javax.wsdl.factory'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,org.apache.cxf.interceptor,org.w3c.dom,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple'/>
    <p n='uses' v='org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.tools.common.model,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.apache.cxf.ws.security.policy.model,org.apache.cxf.security.transport,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.net.ssl,org.apache.cxf.helpers,org.apache.ws.security.handler,org.apache.cxf.ws.security.wss4j,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.ws.security.trust,org.apache.cxf.ws.addressing,org.apache.cxf.ws.security.tokenstore,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.service.invoker,javax.xml.transform.dom,org.apache.ws.security.message.token,org.apache.xml.security.utils,org.apache.ws.security.util,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.binding.soap,org.apache.cxf.common.logging,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.ws.security,org.apache.cxf.service,org.apache.cxf.ws.addressing.policy,org.apache.cxf.ws.policy.builder.primitive,javax.xml.stream,org.apache.ws.security.conversation,org.apache.ws.security.conversation.dkalgo'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.common,org.apache.cxf.io,org.apache.cxf,javax.xml.ws.spi,javax.xml.ws.wsaddressing,javax.xml.bind,javax.xml.ws,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.servlet'/>
    <p n='uses' v='org.apache.cxf.transport.servlet,org.apache.cxf.jaxrs.utils,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.commons.lang,org.apache.cxf.jaxrs.lifecycle,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema.extensions,javax.xml.namespace,org.apache.ws.commons.schema,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,javax.servlet.http,javax.servlet,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='org.apache.cxf,org.springframework.beans,org.apache.cxf.jaxrs.client,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.apache.cxf.jaxrs.utils,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.jaxrs,org.apache.cxf.common.util,javax.xml.namespace,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers,org.apache.cxf.service.model,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2js.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=antlr)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.core ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.ext ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.binary)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec.binary
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.interceptors ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.runtime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.runtime ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.types)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.types ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.service)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.service ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.types)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.types ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.client)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.client ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.form)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.form ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.schemas)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.schemas ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.idltypes)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.idltypes ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.toolspec.toolspecs)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.toolspec.toolspecs
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.idlpreprocessor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.idlpreprocessor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.idl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.idl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js.processor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js.processor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.javascript)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.javascript ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.interceptors
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.tokenstore)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.tokenstore ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.trust)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.trust ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j.policyhandlers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j.policyhandlers
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.conversation ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation.dkalgo)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.conversation.dkalgo ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content.keyvalues)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content.keyvalues
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.xmlimpl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.xmlimpl
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.TypeCodePackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.TypeCodePackage
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.portable)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.portable
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CosNaming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CosNaming
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer.POAPackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer.POAPackage
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle/2.1.1' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle' uri='../org/apache/cxf/cxf-bundle/2.1.1/cxf-bundle-2.1.1.jar' version='2.1.1'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    3806536
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,com.ibm.wsdl,javax.xml.namespace,org.apache.cxf.binding.corba.types,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.commons.codec,org.apache.commons.codec.binary,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.omg.CORBA.portable,org.apache.cxf.service.model,org.objectweb.asm,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.common.xmlschema'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.service.model,org.springframework.context,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.springframework.beans.factory.support,javax.jws.soap,org.apache.cxf.tools.java2wsdl.processor.internal,org.springframework.beans.factory.xml,javax.jws,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.xfire.aegis.type.java5'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.types'/>
    <p n='uses' v='javax.wsdl,javax.xml.stream.events,org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,javax.xml.namespace,org.omg.CORBA.portable,org.apache.cxf.service.model,org.omg.CORBA,org.apache.cxf.binding.corba.runtime,org.apache.cxf.binding.corba,org.apache.cxf.common.util,org.apache.commons.codec.binary,org.apache.cxf.wsdl11,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.toolspec.toolspecs'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.xml.stream,javax.security.auth.callback,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.staxutils,org.apache.ws.security'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.java2wsdl.processor.internal.simple,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.xmlbeans,org.codehaus.jettison.mapped,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.abdera.parser,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream,org.apache.abdera,org.w3c.dom,org.apache.abdera.writer,javax.xml.bind.annotation,org.apache.cxf.transport,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs,javax.xml.bind,org.apache.cxf.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.javascript.service,org.apache.cxf.bus.spring,org.springframework.context.support,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.springframework.beans.factory.support,org.apache.cxf.common.xmlschema,org.springframework.beans.factory.xml,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.datatype,org.apache.cxf.tools.util,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.tools.plugin,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.attachment,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.commons.logging,org.apache.cxf.aegis,org.jdom,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.xml.stream.events,org.w3c.dom.ls,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,javax.wsdl.extensions.mime,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,javax.xml.transform.sax,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.wsdl'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.corba.common.idltypes,org.apache.ws.commons.schema,org.apache.cxf.tools.corba.common,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.corba.utils,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,org.apache.cxf,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.extension,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,com.ibm.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util.xml,org.apache.cxf.tools.util,com.ibm.wsdl.xml,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,org.apache.cxf.tools.common,com.ibm.wsdl.extensions,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.constants'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.codehaus.jra,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.jws,javax.xml.bind.annotation,org.apache.cxf.service.model,javax.xml.ws,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.idl'/>
    <p n='uses' v='org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,antlr.collections.impl,javax.wsdl.factory,org.apache.cxf.tools.common,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.constants,org.apache.cxf.wsdl,antlr,javax.wsdl,org.apache.ws.commons.schema,org.apache.cxf.tools.corba.idlpreprocessor,org.apache.cxf.tools.corba.common,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,antlr.collections,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common.model,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,javax.annotation,org.apache.cxf.jaxrs'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.transport.local,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxws.support,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.handler,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.phase,org.apache.cxf.interceptor,javax.ws.rs,org.apache.cxf.message,org.apache.cxf.jaxrs.model,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.xml.resolver,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba'/>
    <p n='uses' v='org.apache.cxf.tools.corba.processors.idl,org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.corba.common,org.apache.cxf.tools.corba.processors.wsdl,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.message,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.ws.commons.schema.utils,org.apache.cxf.staxutils,org.jdom.output,org.jaxen.jdom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.service'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.soap,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.bus,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.idltypes'/>
    <p n='uses' v='org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.idlpreprocessor'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,javanet.staxutils,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,javax.xml.transform.stream,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws.util'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,com.sun.tools.xjc.api.impl.s2j,com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.xml.transform.dom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.headers,javax.xml.ws.handler,javax.xml.namespace,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.frontend,org.apache.cxf.binding.xml,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.jaxws.binding.http,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,com.sun.xml.bind.api,org.w3c.dom,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.xmlbeans.impl.values,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.xmlbeans.impl.schema,org.apache.cxf.common.xmlschema,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.resource,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.context,org.apache.cxf.ws.policy.attachment.external,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.validation,javax.xml.namespace,com.sun.xml.bind.api,org.apache.cxf.jaxb,org.apache.cxf.service.model,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.codehaus.xfire.aegis.type.java5,org.jdom,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.xml.resolver,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.utils'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.javascript'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.javascript.service,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.tools.common.toolspec,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,org.apache.cxf.javascript.types,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.interceptors'/>
    <p n='uses' v='org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.omg.CORBA.TypeCodePackage,org.w3c.dom,org.omg.CORBA.portable,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.types'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.codehaus.jra,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.binding.http'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf,org.apache.cxf.transports.http.configuration'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='org.apache.cxf.attachment,javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans.impl.util,org.apache.xmlbeans,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,repackage,org.apache.cxf.tools.common,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.javascript.service,org.apache.cxf.aegis.type.mtom,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.activation,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.jaxen,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.wsdl.extensions.mime,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.extensions.http,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.wsdl.factory,org.apache.cxf.tools.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.misc.processor.address,org.xml.sax,javax.wsdl.xml,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.jaxen,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.jaxen.jdom'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.message,javax.naming,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,org.apache.cxf.wsdl,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba'/>
    <p n='uses' v='org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer.POAPackage,org.omg.PortableServer,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.binding,org.apache.cxf.ws.addressing,javax.xml.ws,org.omg.CosNaming,org.omg.CORBA.TypeCodePackage,org.omg.CORBA.portable,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.omg.CORBA,org.apache.cxf.binding.corba.interceptors,javax.annotation,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,org.mozilla.javascript,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf,javax.xml.ws,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.jaxws.context,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.configuration,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.frontend,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.jaxb,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.activation,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.xml.sax,javax.wsdl.xml,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.ws.commons.schema.resolver,org.apache.xml.resolver.helpers,javax.annotation,org.apache.xml.resolver,org.apache.cxf.resource,org.apache.cxf,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,javax.xml.validation,org.apache.cxf.aegis.type,org.apache.cxf.aegis.type.java5,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.runtime'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer,org.omg.CORBA.portable,org.apache.cxf.service.model,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.binding.corba.types,org.apache.cxf.message,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.ws.policy,javax.xml.ws.wsaddressing,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.cxf.common.logging,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.io,javax.xml.ws.spi,org.apache.cxf,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.jaxrs,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2js.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=antlr)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api.impl.s2j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api.impl.s2j
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javanet.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javanet.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.core
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.ext
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.binary)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec.binary
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.interceptors)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.interceptors ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.runtime)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.runtime ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.types)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.types ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.utils)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.utils ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.wsdl)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.wsdl ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.service)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.service ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.types)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.types ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.idltypes)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.idltypes ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.toolspec.toolspecs)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.toolspec.toolspecs
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.idlpreprocessor)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.idlpreprocessor ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.idl)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.idl ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.wsdl)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.wsdl ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.utils)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.utils ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js.processor)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js.processor ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws.util)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws.util ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.javascript)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.javascript ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type.java5)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type.java5
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.TypeCodePackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.TypeCodePackage
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.portable)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.portable
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CosNaming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CosNaming
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer.POAPackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer.POAPackage
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle/2.0.6' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle' uri='../org/apache/cxf/cxf-bundle/2.0.6/cxf-bundle-2.0.6.jar' version='2.0.6'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2818719
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.common.util,javax.jws,org.apache.cxf,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.xml.stream,javax.security.auth.callback,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.staxutils,org.apache.ws.security'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,org.apache.cxf.jaxws.support,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.xml.transform.sax,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.datatype,org.apache.cxf.tools.util,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.tools.plugin,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.xml.stream.events,org.w3c.dom.ls,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,javax.xml.transform.sax,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.extension,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,org.xmlsoap.schemas.wsdl.http,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.codehaus.jra,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.xml.ws,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap,javax.jws.soap,javax.jws'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.transports.http,javax.wsdl.xml,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.transport.local,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxws.support,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.handler,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.extension,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans.factory.wiring,org.apache.cxf.common.util,org.springframework.beans,javax.xml.bind,org.springframework.util,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.xml.resolver,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.message,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws,org.apache.cxf.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.databinding.source,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.jdom.output,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.bus,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,javanet.staxutils,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,javax.xml.transform.stream,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.common,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.xml.transform,org.apache.cxf.tools.common,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,com.sun.tools.xjc.api.impl.s2j,com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.xml.transform.dom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,javax.xml.transform.sax,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.headers,javax.xml.ws.handler,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.frontend,org.apache.cxf.binding.xml,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.service,javax.wsdl,javax.activation,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,javax.xml.validation,org.apache.cxf.common.util,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,org.apache.cxf.databinding.source,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.validator.internal,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.common,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.resource,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.context,org.apache.cxf.ws.policy.attachment.external,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.validation,javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.tools.ant.types,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.tools.ant,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.catalog,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.xml.resolver,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.codehaus.jra,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.binding.http'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf,org.apache.cxf.transports.http.configuration'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='org.apache.cxf.attachment,javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='javax.xml.namespace,javax.activation,org.apache.cxf.aegis,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.wsdl.extensions.mime,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.extensions.http,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.wsdl.factory,org.apache.cxf.tools.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.misc.processor.address,org.xml.sax,javax.wsdl.xml,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.message,javax.naming,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,org.apache.cxf.wsdl,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.bus,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,org.mozilla.javascript,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf,javax.xml.ws,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,org.apache.cxf.message,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.xml.sax,javax.wsdl.xml,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.ws.commons.schema.resolver,org.apache.xml.resolver.helpers,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.jaxws.binding.soap,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.common.util.factory,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlsoap.schemas.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.wsdl.extensions,javax.jws,org.apache.cxf,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.cxf.common.logging,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util.factory'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf,org.apache.cxf.common.i18n,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api.impl.s2j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api.impl.s2j
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javanet.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javanet.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util.factory)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util.factory ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=2.0.6))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http ;version=2.0.6
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle/2.1.3' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle' uri='../org/apache/cxf/cxf-bundle/2.1.3/cxf-bundle-2.1.3.jar' version='2.1.3'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    4073262
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,com.ibm.wsdl,javax.xml.namespace,org.omg.PortableServer,org.apache.cxf.binding.corba.types,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.commons.codec,org.apache.commons.codec.binary,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.databinding,org.omg.CosNaming,org.apache.ws.commons.schema,org.omg.CORBA.portable,org.apache.cxf.service.model,org.objectweb.asm,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.corba.interceptors'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.service.model,org.springframework.context,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.springframework.beans.factory.support,javax.jws.soap,org.apache.cxf.tools.java2wsdl.processor.internal,org.springframework.beans.factory.xml,javax.jws,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.xfire.aegis.type.java5'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.types'/>
    <p n='uses' v='javax.wsdl,javax.xml.stream.events,org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,javax.xml.namespace,org.omg.CORBA.portable,org.apache.cxf.service.model,org.omg.CORBA,org.apache.cxf.binding.corba.runtime,org.apache.cxf.binding.corba,org.apache.cxf.common.util,org.apache.commons.codec.binary,org.apache.cxf.wsdl11,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.toolspec.toolspecs'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.xml.stream,javax.security.auth.callback,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.java2wsdl.processor.internal.simple,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.xmlbeans,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.codehaus.jettison.mapped,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.abdera.parser,org.apache.cxf.jaxrs.impl,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.abdera,org.w3c.dom,org.apache.abdera.writer,javax.xml.bind.annotation,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.aegis.type,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.javascript.service,org.apache.cxf.bus.spring,org.springframework.context.support,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.springframework.beans.factory.support,org.apache.cxf.common.xmlschema,org.springframework.beans.factory.xml,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.datatype,org.apache.cxf.tools.util,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.tools.plugin,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.attachment,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.commons.logging,org.apache.cxf.aegis,org.jdom,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.xml.stream.events,org.w3c.dom.ls,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,javax.wsdl.extensions.mime,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,javax.xml.transform.sax,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.wsdl'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.corba.common.idltypes,org.apache.ws.commons.schema,org.apache.cxf.tools.corba.common,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.corba.utils,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,org.apache.cxf,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.extension,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,com.ibm.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util.xml,org.apache.cxf.tools.util,com.ibm.wsdl.xml,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,org.apache.cxf.tools.common,com.ibm.wsdl.extensions,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.constants'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.codehaus.jra,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.jws,javax.xml.bind.annotation,org.apache.cxf.service.model,javax.xml.ws,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.idl'/>
    <p n='uses' v='org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,antlr.collections.impl,javax.wsdl.factory,org.apache.cxf.tools.common,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.constants,org.apache.cxf.wsdl,antlr,javax.wsdl,org.apache.ws.commons.schema,org.apache.cxf.tools.corba.idlpreprocessor,org.apache.cxf.tools.corba.common,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,antlr.collections,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,javax.xml.bind.annotation.adapters,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common.model,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.transport.local,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,javax.xml.bind,org.springframework.util,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.ws.rs,org.apache.cxf.message,org.apache.cxf.jaxrs.model,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.xml.resolver,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.wsdl'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.annotation,javax.xml.namespace,org.apache.cxf,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba'/>
    <p n='uses' v='org.apache.cxf.tools.corba.processors.idl,org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.corba.common,org.apache.cxf.tools.corba.processors.wsdl,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.apache.cxf.staxutils,org.jaxen.jdom,org.jdom.output,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.configuration.security,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.service'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.soap,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.bus,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.idltypes'/>
    <p n='uses' v='org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.idlpreprocessor'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws.util'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.jdom.input,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,com.sun.tools.xjc.api.impl.s2j,com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.xml.transform.dom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.binding.xml,org.apache.cxf.feature,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.ws.soap,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,com.sun.xml.bind.api,org.w3c.dom,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.xmlbeans.impl.values,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.xmlbeans.impl.schema,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.resource,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.jaxb.attachment,javax.xml.namespace,com.sun.xml.bind.api,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.codehaus.xfire.aegis.type.java5,org.jdom,javax.xml.bind.annotation,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.staxutils,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.utils'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.javascript'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.javascript.service,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.tools.common.toolspec,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,org.apache.cxf.javascript.types,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.interceptors'/>
    <p n='uses' v='org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.omg.CORBA.portable,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.types'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.codehaus.jra,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.binding.http'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf,org.apache.cxf.transports.http.configuration'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.xml.namespace,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.jaxws.support,org.apache.cxf.binding.soap,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans.impl.util,org.apache.xmlbeans,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,repackage,org.apache.cxf.tools.common,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.provider,org.apache.cxf.configuration.security,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.message,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.ws.addressing,org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.javascript.service,org.apache.cxf.aegis.type.mtom,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.activation,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.jaxen,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.wsdl.factory,org.apache.cxf.tools.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.misc.processor.address,org.xml.sax,javax.wsdl.xml,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.wsdl.extensions.mime,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.extensions.http,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.jaxen,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.jaxen.jdom'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms.support,org.springframework.jms,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.ws.addressing,org.springframework.jms.connection,org.springframework.beans.factory,org.apache.cxf.wsdl,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba'/>
    <p n='uses' v='org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer.POAPackage,org.omg.PortableServer,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.binding,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.wsdl,org.omg.CORBA.TypeCodePackage,org.omg.CORBA.portable,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.omg.CORBA,org.apache.cxf.binding.corba.interceptors,javax.annotation,org.apache.cxf.io,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,org.mozilla.javascript,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf,javax.xml.ws,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.jaxws.context,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.binding,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.configuration,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.frontend,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.jaxb,org.apache.cxf.workqueue,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.wsdl.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf.resource,org.apache.cxf,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.runtime'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer,org.omg.CORBA.portable,org.apache.cxf.service.model,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.binding.corba.types,org.apache.cxf.message,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.ws.policy,javax.xml.ws.wsaddressing,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.cxf.common.logging,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.io,javax.xml.ws.spi,org.apache.cxf,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.jaxrs,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2js.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=antlr)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api.impl.s2j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api.impl.s2j
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.core
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.ext
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.binary)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec.binary
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.interceptors)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.interceptors ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.runtime)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.runtime ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.types)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.types ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.utils)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.utils ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.wsdl)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.wsdl ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.service)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.service ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.types)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.types ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.idltypes)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.idltypes ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.toolspec.toolspecs)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.toolspec.toolspecs
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.idlpreprocessor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.idlpreprocessor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.idl)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.idl ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.wsdl)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.wsdl ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.utils)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.utils ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js.processor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js.processor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws.util)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws.util ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.javascript)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.javascript ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type.java5)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type.java5
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.TypeCodePackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.TypeCodePackage
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.portable)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.portable
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CosNaming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CosNaming
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer.POAPackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer.POAPackage
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle/2.1.4' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle' uri='../org/apache/cxf/cxf-bundle/2.1.4/cxf-bundle-2.1.4.jar' version='2.1.4'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    4201229
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,com.ibm.wsdl,javax.xml.namespace,org.omg.PortableServer,org.apache.cxf.binding.corba.types,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.commons.codec,org.apache.commons.codec.binary,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.databinding,org.omg.CosNaming,org.apache.ws.commons.schema,org.omg.CORBA.portable,org.apache.cxf.service.model,org.objectweb.asm,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.corba.interceptors'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.transport.servlet,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxrs.ext,javax.activation,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.transport,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.service.model,org.springframework.context,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.springframework.beans.factory.support,javax.jws.soap,org.apache.cxf.tools.java2wsdl.processor.internal,org.springframework.beans.factory.xml,javax.jws,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.xfire.aegis.type.java5'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.types'/>
    <p n='uses' v='javax.wsdl,javax.xml.stream.events,org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,javax.xml.namespace,org.omg.CORBA.portable,org.apache.cxf.service.model,org.omg.CORBA,org.apache.cxf.binding.corba.runtime,org.apache.cxf.binding.corba,org.apache.cxf.common.util,org.apache.commons.codec.binary,org.apache.cxf.wsdl11,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.toolspec.toolspecs'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.xml.stream,javax.security.auth.callback,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.ws.security.processor,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.java2wsdl.processor.internal.simple,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,javax.xml.parsers,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,javax.mail.util,org.apache.cxf.endpoint,javax.imageio,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.objectweb.asm,javax.xml.transform.dom,javax.imageio.stream,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.xmlbeans,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.codehaus.jettison.mapped,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.jaxrs.utils.schemas,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.abdera.parser,org.apache.cxf.jaxrs.impl,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.abdera,org.codehaus.jettison,javax.activation,org.w3c.dom,org.apache.abdera.writer,javax.xml.bind.annotation,org.apache.cxf.jaxrs.ext.multipart,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.utils.multipart,org.apache.cxf.aegis.type,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.javascript.service,org.apache.cxf.bus.spring,org.springframework.context.support,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.springframework.beans.factory.support,org.apache.cxf.common.xmlschema,org.springframework.beans.factory.xml,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.datatype,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.tools.plugin,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.attachment,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.commons.logging,org.apache.cxf.aegis,org.jdom,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.xml.stream.events,org.w3c.dom.ls,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,javax.wsdl.extensions.mime,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,javax.xml.transform.sax,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.wsdl'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.corba.common.idltypes,org.apache.ws.commons.schema,org.apache.cxf.tools.corba.common,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.corba.utils,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,org.apache.cxf,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,com.ibm.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util.xml,org.apache.cxf.tools.util,com.ibm.wsdl.xml,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,org.apache.cxf.tools.common,com.ibm.wsdl.extensions,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.constants'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.codehaus.jra,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.jws,javax.xml.bind.annotation,org.apache.cxf.service.model,javax.xml.ws,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.idl'/>
    <p n='uses' v='org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,antlr.collections.impl,javax.wsdl.factory,org.apache.cxf.tools.common,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.constants,org.apache.cxf.wsdl,antlr,javax.wsdl,org.apache.ws.commons.schema,org.apache.cxf.tools.corba.idlpreprocessor,org.apache.cxf.tools.corba.common,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,antlr.collections,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.bus.spring,org.apache.cxf.configuration.jsse.spring,org.apache.cxf.common.util,org.apache.cxf.transports.http_jetty.configuration,org.springframework.beans.factory,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.clustering,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common.model,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.attachment,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.mail.internet,org.apache.cxf.jaxrs.interceptor'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.transport.local,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.ws.rs,org.apache.cxf.message,org.apache.cxf.jaxrs.model,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.annotation,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.wsdl'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.annotation,javax.xml.namespace,org.apache.cxf,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba'/>
    <p n='uses' v='org.apache.cxf.tools.corba.processors.idl,org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.corba.common,org.apache.cxf.tools.corba.processors.wsdl,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.apache.cxf.staxutils,org.jaxen.jdom,org.jdom.output,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.configuration.security,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.service'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.soap,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.idltypes'/>
    <p n='uses' v='org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.idlpreprocessor'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.multipart'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.activation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws.util'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.jdom.input,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.xml.transform.dom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.schemas'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.validation,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.binding.xml,org.apache.cxf.feature,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.ws.soap,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.objectweb.asm,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.multipart'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.xmlbeans.impl.values,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.xmlbeans.impl.schema,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.resource,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.jaxb.attachment,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.codehaus.xfire.aegis.type.java5,org.jdom,javax.xml.bind.annotation,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.catalog,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.xml.sax,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.utils'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.javascript'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.javascript.service,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.tools.common.toolspec,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,org.apache.cxf.javascript.types,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.interceptors'/>
    <p n='uses' v='org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.omg.CORBA.portable,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.types'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.interceptor,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.codehaus.jra,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.binding.http'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.xml.namespace,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans.impl.util,org.apache.xmlbeans,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,repackage,org.apache.cxf.tools.common,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.configuration.security,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.ws.addressing,org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.javascript.service,org.apache.cxf.aegis.type.mtom,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.activation,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.jaxen,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.factory,org.apache.cxf.tools.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.misc.processor.address,org.xml.sax,javax.wsdl.xml,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.wsdl.extensions.mime,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.extensions.http,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.jaxen,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.jaxen.jdom'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms.support,org.springframework.jms,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.ws.addressing,org.springframework.jms.connection,org.springframework.beans.factory,org.apache.cxf.wsdl,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.cxf.transport.jms.continuations,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,org.apache.cxf.continuations,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba'/>
    <p n='uses' v='org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer.POAPackage,org.omg.PortableServer,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.binding,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.wsdl,org.omg.CORBA.TypeCodePackage,org.omg.CORBA.portable,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.omg.CORBA,org.apache.cxf.binding.corba.interceptors,javax.annotation,org.apache.cxf.io,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,org.mozilla.javascript,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf,javax.xml.ws,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.jaxws.context,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.binding,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.ws.rs,org.apache.cxf.configuration,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.wsdl.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.runtime'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer,org.omg.CORBA.portable,org.apache.cxf.service.model,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.binding.corba.types,org.apache.cxf.message,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop,org.springframework.aop.framework,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.ws.policy,javax.xml.ws.wsaddressing,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.io,javax.xml.ws.spi,org.apache.cxf,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.jaxrs,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2js.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=antlr)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.core
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.ext
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.binary)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec.binary
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.interceptors)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.interceptors ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.runtime)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.runtime ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.types)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.types ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.utils)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.utils ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.wsdl)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.wsdl ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.service)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.service ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.types)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.types ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.multipart)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.multipart ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.multipart)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.multipart ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.schemas)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.schemas ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.idltypes)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.idltypes ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.toolspec.toolspecs)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.toolspec.toolspecs
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.idlpreprocessor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.idlpreprocessor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.idl)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.idl ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.wsdl)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.wsdl ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.utils)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.utils ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js.processor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js.processor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws.util)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws.util ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.javascript)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.javascript ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type.java5)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type.java5
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.TypeCodePackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.TypeCodePackage
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.portable)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.portable
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CosNaming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CosNaming
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer.POAPackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer.POAPackage
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle/2.0.9' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle' uri='../org/apache/cxf/cxf-bundle/2.0.9/cxf-bundle-2.0.9.jar' version='2.0.9'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2881944
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.common.util,javax.jws,org.apache.cxf,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.xml.stream,javax.security.auth.callback,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,org.apache.cxf.jaxws.support,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.xml.transform.sax,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.datatype,org.apache.cxf.tools.util,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.tools.plugin,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.xml.stream.events,org.w3c.dom.ls,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,javax.wsdl.extensions.mime,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,javax.xml.transform.sax,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.extension,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,org.xmlsoap.schemas.wsdl.http,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.codehaus.jra,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.xml.ws,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap,javax.jws.soap,javax.jws'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.transports.http,javax.wsdl.xml,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.transport.local,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxws.support,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.handler,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,javax.xml.bind,org.springframework.util,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.xml.resolver,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.message,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws,org.apache.cxf.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.databinding.source,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.jdom.output,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.bus,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.common,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,com.sun.tools.xjc.api.impl.s2j,com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.xml.transform.dom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.headers,javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.jaxws.context,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.binding.xml,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.jaxws.binding.http,org.apache.cxf.databinding.source,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,org.apache.cxf.databinding.source,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.resource,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.validation,javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.tools.ant.types,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.tools.ant,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.staxutils,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.codehaus.jra,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.binding.http'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf,org.apache.cxf.transports.http.configuration'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.jaxws.support,org.apache.cxf.binding.soap,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='javax.xml.namespace,javax.activation,org.apache.cxf.aegis,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.wsdl.extensions.mime,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.extensions.http,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.wsdl.factory,org.apache.cxf.tools.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.misc.processor.address,org.xml.sax,javax.wsdl.xml,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms.support,org.springframework.jms,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.ws.addressing,org.springframework.jms.connection,org.springframework.beans.factory,org.apache.cxf.wsdl,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,org.mozilla.javascript,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf,javax.xml.ws,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.xml.sax,javax.wsdl.xml,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.ws.commons.schema.resolver,org.apache.xml.resolver.helpers,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.jaxws.binding.soap,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.common.util.factory,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlsoap.schemas.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.wsdl.extensions,javax.jws,org.apache.cxf,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.cxf.common.logging,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util.factory'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf,org.apache.cxf.common.i18n,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api.impl.s2j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api.impl.s2j
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util.factory)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util.factory ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle/2.2.0' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle' uri='../org/apache/cxf/cxf-bundle/2.2/cxf-bundle-2.2.jar' version='2.2.0'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    4406514
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.common.util,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.transport.servlet,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxrs.ext,org.xml.sax,javax.activation,org.w3c.dom,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.transport,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,org.apache.cxf.jaxrs.utils.multipart,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,com.ibm.wsdl,javax.xml.namespace,org.omg.PortableServer,org.apache.cxf.binding.corba.types,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.commons.codec,org.apache.commons.codec.binary,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.databinding,org.omg.CosNaming,org.apache.ws.commons.schema,org.omg.CORBA.portable,org.apache.cxf.service.model,org.objectweb.asm,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.corba.interceptors'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.apache.cxf.common,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.service.model,org.springframework.context,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.springframework.beans.factory.support,javax.jws.soap,org.apache.cxf.tools.java2wsdl.processor.internal,org.springframework.beans.factory.xml,javax.jws,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.trust'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.xml.security.keys.content.keyvalues,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,org.apache.cxf.service,javax.security.auth.callback,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.databinding.source,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.ws.security.message.token,org.apache.cxf.configuration,org.apache.cxf.common.classloader,org.apache.ws.security.conversation,org.apache.cxf,org.apache.ws.security.conversation.dkalgo,org.apache.ws.security.processor,org.apache.cxf.staxutils,org.apache.cxf.wsdl11,org.apache.ws.security,org.apache.cxf.helpers,org.apache.cxf.ws.security.tokenstore'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.validator,org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.types'/>
    <p n='uses' v='javax.wsdl,javax.xml.stream.events,org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,javax.xml.namespace,org.omg.CORBA.portable,org.apache.cxf.service.model,org.omg.CORBA,org.apache.cxf.binding.corba.runtime,org.apache.cxf.binding.corba,org.apache.cxf.common.util,org.apache.commons.codec.binary,org.apache.cxf.wsdl11,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.toolspec.toolspecs'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.ws.security.message,org.apache.cxf.common.logging,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,javax.security.auth.callback,javax.xml.stream,org.apache.cxf.endpoint,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.ws.security.wss4j.policyhandlers,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf,org.apache.ws.security.processor,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.annotation,javax.xml.parsers,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.java2wsdl.processor.internal.simple,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,javax.xml.parsers,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,javax.mail.util,org.apache.cxf.endpoint,javax.imageio,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.objectweb.asm,javax.xml.transform.dom,javax.imageio.stream,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.xmlbeans,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.codehaus.jettison.mapped,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.jaxrs.utils.schemas,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.abdera.parser,org.apache.cxf.jaxrs.impl,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.abdera,org.apache.cxf.endpoint,org.codehaus.jettison,javax.activation,org.w3c.dom,org.apache.cxf.jaxrs.client,org.apache.abdera.writer,javax.xml.bind.annotation,org.apache.cxf.jaxrs.ext.multipart,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,org.apache.cxf.jaxrs.utils.multipart,javax.ws.rs.core,org.apache.cxf.aegis.type,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.javascript.service,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.common,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.endpoint,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.springframework.beans.factory.support,org.apache.cxf.common.xmlschema,org.springframework.beans.factory.xml,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.datatype,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.tools.plugin,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.attachment,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.commons.logging,org.apache.cxf.aegis,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.common.util,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.xml.stream.events,org.w3c.dom.ls,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,javax.wsdl.extensions.mime,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,javax.xml.transform.sax,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.wsdl'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.corba.common.idltypes,org.apache.ws.commons.schema,org.apache.cxf.tools.corba.common,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.corba.utils,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,org.apache.cxf,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,com.ibm.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util.xml,org.apache.cxf.tools.util,com.ibm.wsdl.xml,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,org.apache.cxf.tools.common,com.ibm.wsdl.extensions,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.constants'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.codehaus.jra,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.jws,javax.xml.bind.annotation,org.apache.cxf.service.model,javax.xml.ws,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.idl'/>
    <p n='uses' v='org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,antlr.collections.impl,javax.wsdl.factory,org.apache.cxf.tools.common,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.constants,org.apache.cxf.wsdl,antlr,javax.wsdl,org.apache.ws.commons.schema,org.apache.cxf.tools.corba.idlpreprocessor,org.apache.cxf.tools.corba.common,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,antlr.collections,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.bus.spring,org.apache.cxf.configuration.jsse.spring,org.apache.cxf.common.util,org.apache.cxf.transports.http_jetty.configuration,org.springframework.beans.factory,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='org.apache.cxf.common,org.apache.cxf.common.util,javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.frontend,org.apache.cxf.common.i18n,javax.xml.bind.annotation.adapters,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.clustering,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common.model,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.version,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.attachment,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.mail.internet,org.apache.cxf.jaxrs.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.transport.local,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,org.apache.cxf.service,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,javax.annotation,org.apache.cxf.io,org.apache.cxf.jaxrs,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.common,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.tokenstore'/>
    <p n='uses' v='javax.xml.namespace,org.apache.ws.security.components.crypto,org.w3c.dom,javax.xml.datatype,org.apache.ws.security.message.token,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.wsdl'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.annotation,javax.xml.namespace,org.apache.cxf,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba'/>
    <p n='uses' v='org.apache.cxf.tools.corba.processors.idl,org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.corba.common,org.apache.cxf.tools.corba.processors.wsdl,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.configuration.security,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.service'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.soap,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.idltypes'/>
    <p n='uses' v='org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.idlpreprocessor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.xml.sax,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.client'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.binding,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.jaxrs.ext.form,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.multipart'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.activation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws.util'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,org.apache.ws.commons.schema,javax.activation,org.w3c.dom,org.apache.commons.logging,javax.xml.xpath,org.apache.cxf.aegis.type.xml,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.xml.transform.dom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.schemas'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.validation,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.binding.xml,org.apache.cxf.feature,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.ws.soap,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.objectweb.asm,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j.policyhandlers'/>
    <p n='uses' v='org.apache.ws.security.message,org.apache.cxf.common.logging,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,javax.security.auth.callback,org.apache.cxf.endpoint,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.ws.security.conversation,org.apache.ws.security.handler,org.apache.cxf,org.apache.ws.security,org.apache.cxf.helpers,org.apache.cxf.ws.security.tokenstore'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.multipart'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.xmlbeans.impl.values,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.xmlbeans.impl.schema,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.resource,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.jaxb.attachment,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.xml.namespace,javax.xml.bind.annotation,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.common.xmlschema,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.form'/>
    <p n='uses' v='org.apache.cxf.jaxrs.impl,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.ws.commons.schema.utils,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.xml.sax,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.utils'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.javascript'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.javascript.service,org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.tools.common.toolspec,javax.wsdl,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,org.apache.cxf.javascript.types,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.interceptors'/>
    <p n='uses' v='org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.omg.CORBA.portable,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.types'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.javascript,org.apache.cxf.common.i18n,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.codehaus.jra,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.binding.http'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.xml.namespace,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.util,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,repackage,org.apache.cxf.tools.common,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.transport,org.apache.cxf.configuration.security,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.ws.addressing,org.apache.cxf.security'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.javascript.service,org.apache.cxf.aegis.type.mtom,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.common,javax.wsdl.factory,org.apache.cxf.tools.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.misc.processor.address,org.xml.sax,javax.wsdl.xml,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.wsdl.extensions.mime,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.extensions.http,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.apache.ws.commons.schema,org.w3c.dom,org.apache.commons.logging,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms,org.springframework.jms.support,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.ws.addressing,org.springframework.jms.connection,org.springframework.beans.factory,org.apache.cxf.wsdl,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.cxf.transport.jms.continuations,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,org.apache.cxf.security,org.apache.cxf.continuations,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.stream,javax.wsdl,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba'/>
    <p n='uses' v='org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer.POAPackage,org.omg.PortableServer,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.binding,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.wsdl,org.omg.CORBA.TypeCodePackage,org.omg.CORBA.portable,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.omg.CORBA,org.apache.cxf.binding.corba.interceptors,javax.annotation,org.apache.cxf.io,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.mozilla.javascript,javax.xml.namespace,org.w3c.dom,org.mozilla.javascript.xml,javax.xml.transform.dom,org.mozilla.javascript.xmlimpl,org.apache.cxf,javax.xml.ws,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.jaxws.context,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.ws.rs,org.apache.cxf.configuration,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema,org.apache.cxf.aegis.type,javax.xml.namespace,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.wsdl.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='org.apache.cxf.ws.security.policy.builders,javax.annotation,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.java5,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.runtime'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer,org.omg.CORBA.portable,org.apache.cxf.service.model,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.binding.corba.types,org.apache.cxf.message,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop,net.sf.cglib.proxy,org.springframework.aop.framework,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.ws.policy,javax.xml.ws.wsaddressing,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.security.transport,org.apache.cxf.ws.security.trust,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.security,org.apache.cxf.ws.policy,org.apache.xml.security.utils,org.apache.cxf.ws.addressing,org.apache.ws.security.util,org.apache.cxf.service,org.apache.cxf.ws.security.wss4j,javax.xml.stream,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.ws.security.conversation,org.apache.ws.security.handler,org.apache.ws.security.conversation.dkalgo,org.apache.cxf,org.apache.cxf.staxutils,org.apache.ws.security,javax.net.ssl,org.apache.cxf.helpers,org.apache.cxf.ws.security.tokenstore'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.common,org.apache.cxf.io,javax.xml.ws.spi,org.apache.cxf,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.jaxrs.client,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.jaxrs,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2js.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=antlr)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.core ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.ext ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.binary)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec.binary
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.interceptors ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.runtime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.runtime ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.types)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.types ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.service)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.service ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.types)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.types ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.client)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.client ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.form)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.form ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.schemas)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.schemas ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.idltypes)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.idltypes ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.toolspec.toolspecs)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.toolspec.toolspecs
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.idlpreprocessor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.idlpreprocessor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.idl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.idl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js.processor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js.processor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.javascript)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.javascript ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.interceptors
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.tokenstore)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.tokenstore ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.trust)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.trust ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j.policyhandlers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j.policyhandlers
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.conversation ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation.dkalgo)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.conversation.dkalgo ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content.keyvalues)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content.keyvalues
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.xmlimpl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.xmlimpl
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.TypeCodePackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.TypeCodePackage
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.portable)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.portable
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CosNaming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CosNaming
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer.POAPackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer.POAPackage
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.bundle/2.2.3' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.bundle' uri='../org/apache/cxf/cxf-bundle/2.2.3/cxf-bundle-2.2.3.jar' version='2.2.3'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    4550001
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.bundle'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='javax.net.ssl,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.helpers,org.apache.neethi,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.ws.rs,javax.servlet.http,javax.ws.rs.ext,javax.servlet,javax.ws.rs.core,org.apache.cxf.jaxrs.ext,org.apache.cxf.common.util,javax.activation,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.helpers,org.apache.cxf.transport.servlet,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,org.apache.cxf.ws.addressing,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.jaxrs.impl.tl,javax.xml.namespace,org.apache.cxf.jaxrs.utils.multipart,org.w3c.dom,org.apache.cxf.jaxrs.lifecycle,org.apache.cxf.common.classloader,org.apache.cxf.resource,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.utils'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.databinding,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.binding.corba,javax.xml.stream,org.apache.cxf.binding.corba.types,org.apache.cxf.binding.corba.wsdl,org.apache.cxf.common.util,javax.xml.namespace,org.objectweb.asm,org.omg.CORBA,org.apache.cxf.common.logging,javax.wsdl,com.ibm.wsdl,javax.xml.bind,org.apache.ws.commons.schema,org.omg.CORBA.portable,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.corba.interceptors,org.omg.CosNaming,org.omg.PortableServer'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.jws.soap,javax.jws,javax.xml.ws,org.apache.cxf.tools.util,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.common.i18n,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.common,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.service.model,org.springframework.context,org.apache.cxf.tools.java2wsdl.generator,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.trust'/>
    <p n='uses' v='org.apache.xml.security.keys.content.keyvalues,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,org.apache.cxf.service,javax.security.auth.callback,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.ws.security.message.token,org.apache.cxf.configuration,org.apache.cxf.common.classloader,org.apache.ws.security.conversation,org.apache.ws.security.conversation.dkalgo,org.apache.cxf,org.apache.ws.security.processor,org.apache.cxf.staxutils,org.apache.cxf.wsdl11,org.apache.ws.security,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.wsdlto.core,javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.xmlschema,org.apache.cxf.common,org.apache.cxf.tools.validator,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.types'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.service.model,org.omg.CORBA,javax.xml.stream.events,org.apache.cxf.binding.corba.utils,org.apache.cxf.binding.corba.wsdl,org.omg.CORBA.portable,org.apache.cxf.binding.corba.runtime,org.apache.cxf.binding.corba,javax.xml.stream,org.apache.ws.commons.schema,javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.wsdl11,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.helpers,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.toolspec.toolspecs'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.net.ssl,javax.security.auth.x500,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.configuration.security,org.apache.cxf.transport.http,javax.servlet.http,org.apache.cxf.security.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.configuration.security,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.message,org.apache.cxf.jaxws.handler,org.apache.cxf.jaxws.handler.soap,javax.xml.ws,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding,org.apache.cxf.staxutils,javax.xml.stream,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.namespace,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.saaj,org.apache.cxf.transport,org.apache.cxf.jaxws.context,org.apache.cxf.common.logging,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap,org.apache.cxf.io,javax.xml.bind,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='javax.xml.namespace,org.apache.ws.security.components.crypto,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security,org.apache.cxf.endpoint,org.apache.cxf.ws.security.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.service.model,javax.xml.xpath,javax.xml.soap,org.apache.cxf.common.classloader,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.helpers,javax.xml.stream,org.apache.ws.security.message,org.apache.cxf.ws.security.wss4j.policyhandlers,org.apache.cxf.binding.soap.saaj,org.apache.cxf.security,javax.security.auth.callback,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.ws.security.util,javax.xml.transform.dom,org.apache.ws.security.message.token,org.apache.ws.security.processor,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.common.util,javax.annotation,javax.xml.parsers,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.databinding,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.extension,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management,org.apache.cxf.buslifecycle'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.apache.cxf.common.logging,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.java2wsdl.processor.internal.simple,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.addressing.v200408,javax.xml.bind.annotation,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.addressing,org.apache.cxf.helpers,org.apache.cxf.ws.rm.manager,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.policy,javax.xml.datatype,javax.xml.bind,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.service.invoker,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.binding.soap.model,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.ws.rm.soap,javax.annotation,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.ws,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf.attachment,javax.activation,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,javax.xml.transform.sax,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.saaj,javax.imageio,org.apache.cxf.binding.soap.model,org.apache.cxf.common.i18n,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,javax.mail.util,javax.imageio.stream,javax.xml.bind,org.apache.cxf.common.classloader,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,org.apache.cxf.service.model,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.aegis,org.apache.cxf,javax.xml.bind.annotation,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.utils.schemas,javax.ws.rs,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.jaxrs.ext,org.apache.cxf.aegis.type,org.apache.cxf.staxutils,javax.xml.stream,org.codehaus.jettison,org.codehaus.jettison.mapped,org.apache.abdera.parser,org.apache.abdera.model,org.apache.abdera,org.apache.abdera.writer,org.apache.cxf.helpers,javax.servlet.http,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.jaxrs.impl,org.apache.cxf.jaxrs.utils.multipart,javax.xml.transform,javax.xml.transform.stream,javax.activation,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.client,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.model.wadl,javax.xml.transform.dom,org.apache.cxf.jaxrs.ext.xml,javax.xml.parsers,org.w3c.dom,org.apache.xmlbeans,org.xml.sax,javax.xml.transform.sax'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.service,javax.activation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.springframework.context.support,org.apache.cxf.bus.spring,org.apache.cxf.javascript.service,org.apache.cxf.common,org.apache.cxf.tools.common,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.endpoint,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.springframework.beans.factory.support,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.java2wsdl.processor.internal,org.springframework.beans.factory.xml,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf,org.apache.cxf.wsdl,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.plugin,javax.xml.bind,javax.xml.datatype'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model,javax.wsdl,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.xml.namespace,javax.activation,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.common.logging,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf,javax.xml.stream,org.w3c.dom.ls,javax.wsdl.extensions,javax.wsdl.extensions.mime,org.apache.cxf.tools.util,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.resource,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,javax.xml.parsers,javax.xml.stream.events,javax.xml.namespace,org.apache.cxf.common.util,org.apache.cxf.helpers,javax.wsdl.extensions.soap,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.wsdl11,org.apache.cxf.catalog,org.apache.cxf.wsdl,javax.xml.xpath,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.tools.common.extensions.soap,javax.jws.soap'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.wsdl'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.tools.corba.common,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.w3c.dom,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers,org.apache.ws.commons.schema.utils,org.apache.cxf.common.util,org.apache.cxf.tools.corba.common.idltypes,org.apache.cxf.tools.corba.utils,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.stream,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.common.util,org.w3c.dom,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,javax.xml.stream,org.apache.cxf.interceptor,org.apache.cxf.common.logging,org.apache.cxf.transport,org.apache.cxf.continuations,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.wsdl,org.apache.cxf.tools.common,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='javax.activation,org.apache.cxf.io,org.apache.cxf.helpers,org.apache.cxf.message,javax.mail.internet,javax.mail'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transport,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.helpers,javax.wsdl.extensions,javax.xml.namespace,org.apache.cxf.service.model,org.xml.sax,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.common.logging,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common'/>
    <p n='uses' v='org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.tools.common,org.xml.sax,org.apache.cxf.tools.util,javax.wsdl,javax.wsdl.extensions,javax.wsdl.xml,com.ibm.wsdl.extensions,com.ibm.wsdl,javax.wsdl.extensions.schema,org.w3c.dom,com.ibm.wsdl.util.xml,com.ibm.wsdl.xml,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema,org.apache.ws.commons.schema.constants'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.management,org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.message,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.staxutils,org.apache.cxf.interceptor,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.cxf.common.util,org.apache.ws.commons.schema,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.message,org.codehaus.jra'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.tools.common.model,org.apache.cxf.common.util,javax.xml.namespace,javax.xml.ws,org.apache.cxf.service.model,javax.jws,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,org.apache.ws.commons.schema.resolver,org.xml.sax,org.apache.ws.commons.schema.utils,javax.xml.transform,org.apache.cxf.common.i18n,org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='uses' v='javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.utils,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.idl'/>
    <p n='uses' v='org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.tools.corba.common,javax.wsdl,antlr.collections,javax.wsdl.extensions,org.apache.cxf.helpers,org.apache.ws.commons.schema.constants,antlr.collections.impl,antlr,org.apache.cxf.tools.common,org.apache.cxf.tools.corba.idlpreprocessor,org.apache.cxf.tools.util,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.utils,javax.xml.parsers,org.w3c.dom,javax.xml.bind,javax.wsdl.factory,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.logging,org.xml.sax,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='javax.xml.stream,org.apache.cxf.common,javax.xml.namespace,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,org.apache.cxf.helpers,javax.xml.namespace,org.apache.cxf.common.util,org.springframework.beans.factory,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.xml.sax,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.namespace,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,javax.wsdl,javax.wsdl.xml,javax.wsdl.factory,org.w3c.dom.ls,org.apache.cxf.common.logging,org.w3c.dom.bootstrap,javax.xml.xpath'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.bug671'/>
    <p n='uses' v='com.sun.tools.xjc,com.sun.xml.bind.api.impl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,javax.wsdl,javax.jws.soap,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.ws.commons.schema,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.jaxb,javax.xml.ws,org.apache.ws.commons.schema.constants'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.databinding,org.apache.cxf,org.apache.cxf.interceptor,org.apache.cxf.service,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.common.xmlschema,org.w3c.dom,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.binding,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,javax.wsdl,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf.clustering,org.apache.cxf.wsdl11,javax.wsdl.extensions.soap'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs.core,javax.annotation,org.apache.cxf.jaxrs.impl.tl,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.jaxb,javax.xml.datatype,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.namespace,org.apache.neethi,org.w3c.dom,org.apache.cxf.extension,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf,org.xml.sax,javax.xml.parsers,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.ws.policy.attachment.external,javax.wsdl.extensions,org.apache.cxf.staxutils,javax.xml.stream,org.springframework.context,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.feature,org.springframework.beans'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,javax.servlet,org.apache.cxf.security,org.apache.cxf.transport,org.apache.cxf.io,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,org.apache.cxf.common.util,org.apache.cxf.transport.https,org.apache.cxf.ws.policy,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.service.model,org.apache.cxf.configuration,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.helpers,javax.wsdl.extensions.soap,javax.wsdl.extensions.http,org.apache.cxf.wsdl.http,javax.wsdl,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.workqueue,org.apache.cxf.version,javax.net.ssl,org.apache.cxf.transports.http,org.apache.cxf.catalog,javax.wsdl.extensions.soap12,javax.wsdl.factory,javax.xml.parsers,javax.wsdl.extensions.schema,javax.xml.stream,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.wsdl.extensions,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.helpers,org.apache.cxf.binding.xml.interceptor,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.ws.commons.schema,javax.xml.transform,javax.xml.transform.dom'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.namespace,org.apache.cxf.service.model,javax.wsdl,org.apache.cxf.ws.policy.attachment,org.w3c.dom,org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='javax.servlet.http,javax.ws.rs.ext,javax.servlet,javax.ws.rs.core,org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.attachment,org.apache.cxf.message,javax.mail.internet,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.jaxrs.model'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.message,org.apache.cxf.interceptor,javax.annotation,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.transport.local'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.jaxws.handler,javax.xml.ws,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.interceptor,javax.xml.ws.soap,javax.xml.namespace,org.apache.cxf.binding.soap.saaj,org.apache.cxf.endpoint,org.apache.cxf.transport,org.apache.cxf.binding,org.apache.cxf.jaxws.context,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.bind,org.springframework.util,org.springframework.beans.factory,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.springframework.beans,org.springframework.context,org.springframework.beans.factory.wiring,org.apache.cxf.extension,org.apache.cxf.configuration'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.interceptor,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.phase,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.jaxrs.ext,javax.xml.stream.events,javax.ws.rs.ext,org.apache.cxf.io,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf.catalog,org.apache.cxf.resource,org.apache.cxf,javax.wsdl,javax.xml.transform.dom,javax.wsdl.extensions,javax.xml.namespace,javax.wsdl.extensions.schema,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.helpers,org.apache.cxf.common,javax.wsdl.factory,javax.xml.parsers,org.apache.cxf.wsdl,com.ibm.wsdl.extensions.schema,org.apache.cxf.binding,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.service,com.ibm.wsdl.extensions.soap,javax.annotation,javax.wsdl.extensions.mime,javax.xml.bind,javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12,org.apache.cxf.transport,org.apache.cxf.service.factory'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.tokenstore'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.ws.security.message.token,javax.xml.namespace,org.apache.ws.security.components.crypto,org.w3c.dom,javax.xml.datatype,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.wsdl'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.wsdl,javax.wsdl.extensions,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.w3c.dom,javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba'/>
    <p n='uses' v='org.apache.cxf.tools.corba.processors.idl,org.apache.cxf.tools.common,org.apache.cxf.tools.corba.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.corba.processors.wsdl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.message,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.attachment,org.apache.cxf.binding,org.apache.cxf.configuration.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.xml,org.apache.cxf.staxutils,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.service'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.soap,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.apache.cxf.configuration.security,org.mortbay.jetty.security,javax.net.ssl,org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.mortbay.jetty'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.transport,org.apache.cxf.interceptor,javax.activation,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.helpers,org.apache.cxf,org.apache.cxf.service,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model.wadl'/>
    <p n='uses' v='org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.jaxrs.provider,javax.xml.bind.annotation,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.ws.rs.core,org.apache.cxf.jaxrs,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.w3c.dom,javax.xml.namespace,org.apache.cxf.tools.common.dom,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.jdom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean,org.apache.cxf.helpers,javax.management.remote'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.idltypes'/>
    <p n='uses' v='org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.idlpreprocessor'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.core.io,org.springframework.beans.factory.xml,org.junit,org.apache.cxf,org.springframework.context,org.springframework.context.support,javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.helpers,org.xml.sax,org.springframework.beans,org.apache.cxf.bus.spring,org.apache.cxf.message,org.apache.cxf.transport,javax.wsdl.xml,org.apache.cxf.service.model,javax.wsdl.factory,org.apache.cxf.service,org.apache.cxf.wsdl11,javax.xml.stream,junit.framework,javax.xml.xpath,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.client'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.phase,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.ws.rs.ext,org.apache.cxf.binding,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.common.util,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.bus.spring,org.apache.cxf.jaxrs.ext.form'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.multipart'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.activation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.parsers,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.jdom,org.xml.sax,javax.xml.transform,javax.xml.transform.dom,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws.util'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.databinding,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis,org.apache.cxf.aegis.type.collection,org.apache.cxf.common.logging,javax.activation,org.w3c.dom,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema,org.apache.cxf.common.xmlschema,org.xml.sax,javax.xml.xpath,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.apache.cxf.continuations,org.mortbay.jetty,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.primitive,javax.xml.bind,javax.xml.stream,org.apache.cxf.common.logging,org.w3c.dom,org.apache.cxf.common.classloader,org.apache.cxf.jaxb'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.namespace,org.apache.cxf.transport,org.springframework.beans,org.springframework.context'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.tools.util,com.sun.tools.xjc.api,org.xml.sax,org.apache.cxf.tools.common,com.sun.codemodel,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.helpers,org.apache.cxf.common,javax.xml.stream.util,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.ws.commons.schema.extensions,javax.xml.transform,javax.xml.validation,org.apache.cxf.common.util,com.sun.tools.xjc,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.staxutils,javax.xml.parsers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.namespace,org.apache.cxf.binding.xml.interceptor,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.springframework.core.io.support,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.context,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.core.io,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.resource,org.springframework.beans,org.springframework.beans.factory,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.springframework.context.event,org.apache.cxf,org.springframework.beans.factory.config,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.core,org.apache.cxf.extension,org.apache.cxf.configuration,org.apache.cxf.helpers,javax.xml.parsers,javax.xml.stream,org.apache.cxf.common.injection,org.apache.cxf.feature,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common.model,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.ws,org.apache.cxf.tools.util,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.tools.common,javax.jws,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.schemas'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.validation,org.apache.cxf,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.endpoint,org.apache.cxf.jaxws,org.apache.cxf,javax.xml.ws,org.apache.cxf.service.model,org.apache.cxf.service,javax.xml.namespace,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.wsdl,javax.wsdl,javax.xml.ws.soap,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.binding,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.util,javax.jws,org.apache.cxf.jaxb,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.frontend,org.apache.cxf.databinding,org.apache.cxf.databinding.source,javax.xml.bind.annotation,org.apache.cxf.wsdl11,org.apache.cxf.helpers,javax.xml.soap,javax.activation,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation,org.apache.cxf.common.util,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.datatype,javax.xml.bind.annotation.adapters,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.service,javax.xml.bind.attachment,javax.xml.validation,org.apache.cxf.jaxb.attachment,javax.xml.bind,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.helpers,javax.xml.transform.stream,org.apache.cxf.staxutils,org.apache.ws.commons.schema.utils,org.apache.commons.lang.builder,org.apache.commons.lang,javax.xml.transform,org.objectweb.asm,com.sun.xml.bind.marshaller'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management,org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.rm.persistence,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.w3c.dom,org.apache.cxf.transport.jms,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.util,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.staxutils,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j.policyhandlers'/>
    <p n='uses' v='org.apache.ws.security.message,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,javax.security.auth.callback,org.apache.cxf.endpoint,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.ws.security.conversation,org.apache.ws.security.handler,org.apache.cxf,org.apache.ws.security,org.apache.cxf.helpers,org.apache.cxf.ws.security.tokenstore'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.common,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf.catalog,org.w3c.dom,org.apache.cxf.resource,org.apache.cxf.helpers,javax.wsdl,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl11,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.multipart'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.transport,org.apache.cxf.binding,org.apache.cxf.service,org.apache.cxf.common.i18n,org.apache.cxf.databinding,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.validation,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.stream,org.apache.ws.commons.schema,org.apache.xmlbeans.impl.values,org.apache.cxf.common.util,org.apache.cxf.staxutils,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.ws.commons.schema.resolver,org.xml.sax,org.apache.xmlbeans.impl.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='org.apache.cxf.frontend,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.configuration.security,javax.net.ssl,javax.xml.stream,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.ws.policy.attachment.external,org.apache.cxf.ws.policy,org.springframework.beans.factory.xml,org.springframework.beans.factory.support,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.jaxb.attachment,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.version,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.util,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.helpers,javax.xml.bind,org.junit,javax.xml.namespace,org.apache.cxf.tools.common.model,org.apache.cxf.test,org.apache.velocity.app,org.apache.velocity,org.apache.velocity.context'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.springframework.beans.factory.support,org.springframework.beans.factory.config,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.rm.policy,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.type,javax.xml.namespace,javax.xml.bind.annotation,org.apache.cxf.aegis.xml,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.bus,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.ws.commons.schema,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,javax.xml.xpath,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.catalog,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.staxutils,javax.xml.stream,javax.wsdl.extensions,javax.wsdl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.form'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.impl,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.v200408'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource,javax.resource.spi,javax.xml.namespace,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.common.util,org.apache.ws.commons.schema,org.apache.ws.commons.schema.utils,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf,org.apache.cxf.service.model,javax.xml.namespace,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.binding,org.apache.cxf.service,javax.annotation,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.configuration.spring,org.xml.sax,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf.transport,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.databinding,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.validation,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream,javax.xml.stream.events,org.apache.cxf.common.classloader,org.apache.cxf.feature,org.apache.cxf.attachment,javax.xml.xpath,org.apache.ws.commons.schema,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.frontend,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.service.invoker'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.utils'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.javascript'/>
    <p n='uses' v='javax.wsdl,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.xmlschema,org.apache.cxf.common,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.endpoint,org.apache.cxf.javascript.service,org.apache.cxf.javascript,org.apache.cxf.javascript.types,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.message,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.helpers,org.apache.cxf.binding,org.apache.cxf.interceptor,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.transport,javax.wsdl,org.apache.ws.commons.schema,org.apache.cxf.binding.soap.model,org.apache.cxf.common.xmlschema,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,javax.wsdl.extensions.mime,org.apache.cxf.wsdl,org.apache.cxf.wsdl11,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.headers,org.apache.cxf.databinding,javax.wsdl.factory,javax.annotation,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.interceptors'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.binding.corba.utils,org.apache.cxf.binding.corba.wsdl,javax.xml.ws,javax.xml.bind.annotation,org.apache.cxf.transport,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing,org.omg.CORBA.portable'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.types'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.javascript,org.apache.cxf.common.i18n,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.binding.http,org.apache.cxf.service.model,org.codehaus.jra'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.common.i18n,javax.annotation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream,javax.xml.namespace,javax.xml.stream.events,org.apache.cxf.common.util,org.w3c.dom,javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,org.apache.cxf.common.logging,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.classloader,javax.xml.parsers,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.jaxws,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers,org.apache.cxf.frontend,org.apache.cxf.frontend.spring,org.apache.cxf.jaxws.support'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.namespace,javax.annotation,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='org.mortbay.jetty,org.apache.cxf.endpoint,org.mortbay.jetty.handler,org.apache.cxf.transports.http,javax.servlet.http,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.servlet,org.apache.cxf.io,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transport.http,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations,org.mortbay.jetty.nio,org.apache.cxf.configuration.jsse,org.mortbay.thread,org.mortbay.jetty.security,org.apache.cxf.transport.https_jetty,javax.annotation,org.mortbay.jetty.servlet,org.apache.cxf.buslifecycle,javax.imageio'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='org.apache.cxf.attachment,javax.xml.bind.attachment,javax.xml.namespace,javax.activation,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.service.model,javax.xml.ws.soap,javax.xml.soap,org.apache.cxf.common.logging,org.apache.cxf.jaxws.binding,org.apache.cxf.binding.soap.model,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.binding.soap,org.apache.cxf.binding,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl11,org.apache.cxf.jaxb,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.invoker,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.util,repackage,org.apache.cxf.tools.common,org.apache.cxf.tools.util,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.w3c.dom,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.cxf.helpers,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.utils,org.apache.cxf.message,javax.servlet.http,javax.servlet,org.apache.cxf.jaxrs.provider,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.model.wadl,org.apache.cxf.phase,org.apache.cxf.ws.addressing,org.apache.cxf.security,org.apache.cxf.configuration.security,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.endpoint,org.apache.ws.commons.schema.utils,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf,org.apache.cxf.transports.http,org.apache.cxf.common.i18n,org.apache.cxf.transport,org.apache.cxf.javascript.service,org.apache.cxf.javascript.types,org.apache.cxf.transport.http,org.apache.cxf.databinding.source.mime,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,org.apache.cxf.message,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.attachment,org.apache.cxf.aegis.util,javax.activation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.rm,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.neethi,javax.xml.bind,org.apache.cxf.ws.rm.soap,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.tools.util,javax.wsdl,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,javax.jws,org.apache.cxf.jaxb,org.apache.ws.commons.schema,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.wsdlto.core,javax.xml.ws,org.apache.ws.commons.schema.constants,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.helpers,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.wsdl.extensions,javax.wsdl.extensions.http,javax.jws.soap,javax.wsdl.extensions.mime'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.tools.validator.internal,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.wsdl.extensions,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.wsdl,org.apache.cxf.wsdl11,org.apache.cxf.tools.misc.processor.address,javax.wsdl.xml,javax.xml.namespace,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.util.date,org.w3c.dom,org.apache.cxf.aegis.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.model'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,org.apache.cxf.message,org.springframework.jms.core,javax.jms,org.apache.cxf.buslifecycle,org.springframework.jms.listener,org.apache.cxf.common.logging,org.springframework.jms,org.springframework.jms.support,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf,org.apache.cxf.ws.addressing,org.springframework.beans.factory.annotation,org.apache.cxf.endpoint,org.apache.cxf.feature,org.springframework.transaction,org.springframework.jms.support.destination,org.springframework.core.task,org.springframework.jms.connection,org.springframework.beans.factory,org.springframework.jndi,org.apache.cxf.helpers,org.apache.cxf.interceptor,org.apache.cxf.transport.jms.continuations,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.naming,org.apache.cxf.io,javax.annotation,org.apache.cxf.security,org.springframework.jms.support.converter,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.common.i18n,org.xml.sax,javax.xml.parsers,org.w3c.dom,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.configuration,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.service.model,org.w3c.dom,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring,org.apache.cxf.extension,org.apache.cxf.ws.addressing,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.ws.policy.attachment,org.apache.neethi,org.springframework.core.io,org.apache.cxf,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers,org.xml.sax,org.apache.cxf.resource,javax.xml.xpath'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.jws,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.common.util,javax.wsdl,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,javax.wsdl.extensions.soap12,org.apache.cxf.common,javax.wsdl.extensions,javax.jws.soap,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.model,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,javax.jws,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.ws,org.apache.cxf.binding.corba.utils,org.apache.cxf.transport,org.apache.cxf.binding.corba.interceptors,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.io,org.omg.CORBA,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.CORBA.portable,org.apache.cxf.binding.corba.types,org.omg.PortableServer.POAPackage,org.omg.PortableServer,org.apache.cxf.binding.corba.runtime,org.apache.cxf.wsdl,org.omg.CORBA.TypeCodePackage'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='javax.xml.transform.dom,org.mozilla.javascript.xmlimpl,org.apache.cxf.jaxws,org.mozilla.javascript,javax.xml.namespace,org.apache.cxf,org.w3c.dom,javax.xml.ws,org.mozilla.javascript.xml,org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.cxf.message,org.apache.cxf.transport.jms,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,javax.xml.ws,org.apache.cxf.service.model,org.apache.cxf.phase,javax.xml.ws.handler,org.apache.cxf.jaxws.context,javax.jws,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.resource,org.apache.cxf.common.injection,javax.xml.ws.soap,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.soap,org.apache.cxf.binding.soap,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.binding,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.interceptor,org.apache.cxf.service.invoker,org.apache.cxf.message,org.apache.cxf.jaxrs.lifecycle,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.databinding,org.apache.cxf.configuration,org.apache.cxf.workqueue'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.annotation,javax.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.apache.cxf.aegis,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.resource,org.springframework.context.event,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.springframework.core.io,javax.naming,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transports.http,org.apache.cxf.wsdl.http,org.apache.cxf.interceptor,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.transport.http,org.apache.cxf.ws.addressing,javax.annotation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.soap,javax.xml.ws.handler,org.apache.cxf.headers,org.apache.cxf.endpoint,javax.xml.namespace,javax.activation,org.apache.cxf.service.invoker,org.w3c.dom,org.apache.cxf.jaxws.context,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.attachment,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.helpers,org.apache.cxf.common.logging,javax.xml.ws.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.jaxws.support,org.apache.cxf.binding.soap.saaj,javax.xml.bind,javax.xml.ws,org.apache.cxf.databinding,org.apache.cxf.service.factory,org.apache.cxf.configuration,org.apache.cxf.common.util,org.apache.cxf,javax.xml.ws.wsaddressing,org.apache.cxf.service,org.apache.cxf.jaxws.binding.soap,javax.jws,org.apache.cxf.frontend,org.apache.cxf.jaxws.handler,org.apache.cxf.resource,org.apache.cxf.common.injection,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.feature,javax.wsdl.extensions.soap12,javax.xml.ws.spi,org.apache.cxf.jaxb,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.wsdl.http,org.apache.cxf.databinding.source,org.apache.cxf.transport,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.wsdl11,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema,org.apache.cxf.helpers,org.apache.xml.resolver.helpers,org.apache.cxf.common.logging,javax.annotation,org.apache.xml.resolver,org.apache.xml.resolver.tools'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.builders,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.common.util,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.wsdl.xml,org.apache.ws.commons.schema,javax.xml.namespace,javax.wsdl.factory,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.transport,org.apache.cxf.io,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing,org.apache.cxf.service.model,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.type.basic,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,javax.xml.parsers,org.apache.cxf.aegis.type.java5,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.aegis.xml,org.apache.cxf.common.i18n,org.apache.cxf.aegis.xml.stax'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.runtime'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer,org.apache.cxf.service.model,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.message,org.apache.cxf.binding.corba.types,javax.xml.stream,org.omg.CORBA.portable,javax.xml.stream.events,org.apache.cxf.binding.corba.utils,javax.annotation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.apache.cxf.binding.soap,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.beans'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.cxf.transport,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.policy,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.common.i18n,javax.xml.parsers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.objectweb.asm,org.apache.cxf.common.i18n,org.apache.cxf.common.logging,net.sf.cglib.proxy,org.apache.cxf.helpers,org.springframework.aop.framework,org.springframework.aop.support,org.springframework.aop,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.headers,org.apache.cxf.common.util,org.apache.cxf.databinding,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.helpers,org.w3c.dom,org.apache.cxf,javax.xml.parsers,javax.xml.xpath,org.apache.cxf.binding,org.apache.cxf.io,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='org.jdom,org.apache.cxf.staxutils,javax.xml.stream,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.util,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.message,org.apache.cxf.interceptor,org.apache.cxf.endpoint,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.binding,org.apache.cxf,javax.xml.bind,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.ws.addressing.policy,org.apache.cxf.phase,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.ws.policy,javax.xml.ws,org.apache.cxf.helpers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.v200408,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,javax.xml.ws.wsaddressing,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.ws.addressing.soap,org.apache.cxf.feature'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf,org.apache.cxf.configuration,org.apache.cxf.workqueue,org.apache.cxf.common.xmlschema'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.transform.dom,org.w3c.dom.ls,org.xml.sax,org.apache.cxf.resource,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream.util,javax.xml.bind.annotation,org.apache.cxf.common.classloader,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl.http,javax.wsdl.factory'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,org.apache.cxf.interceptor,org.w3c.dom,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple'/>
    <p n='uses' v='org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.tools.common.model,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.apache.cxf.ws.security.policy.model,org.apache.cxf.security.transport,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.net.ssl,org.apache.cxf.helpers,org.apache.ws.security.handler,org.apache.cxf.ws.security.wss4j,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.ws.security.trust,org.apache.cxf.ws.addressing,org.apache.cxf.ws.security.tokenstore,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.service.invoker,javax.xml.transform.dom,org.apache.ws.security.message.token,org.apache.xml.security.utils,org.apache.ws.security.util,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.binding.soap,org.apache.cxf.common.logging,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.ws.security,org.apache.cxf.service,org.apache.cxf.ws.addressing.policy,org.apache.cxf.ws.policy.builder.primitive,javax.xml.stream,org.apache.ws.security.conversation,org.apache.ws.security.conversation.dkalgo'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.common,org.apache.cxf.io,org.apache.cxf,javax.xml.ws.spi,javax.xml.ws.wsaddressing,javax.xml.bind,javax.xml.ws,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.servlet'/>
    <p n='uses' v='org.apache.cxf.transport.servlet,org.apache.cxf.jaxrs.utils,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.commons.lang,org.apache.cxf.jaxrs.lifecycle,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema.extensions,javax.xml.namespace,org.apache.ws.commons.schema,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,javax.servlet.http,javax.servlet,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='org.apache.cxf,org.springframework.beans,org.apache.cxf.jaxrs.client,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.apache.cxf.jaxrs.utils,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.jaxrs,org.apache.cxf.common.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers,org.apache.cxf.service.model,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2js.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=antlr)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.api.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.api.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.core ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.ext ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.interceptors ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.runtime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.runtime ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.types)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.types ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.service)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.service ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.types)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.types ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.client)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.client ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.form)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.form ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model.wadl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model.wadl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.schemas)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.schemas ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.idltypes)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.idltypes ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.toolspec.toolspecs)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.toolspec.toolspecs
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.idlpreprocessor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.idlpreprocessor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.idl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.idl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js.processor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js.processor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.javascript)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.javascript ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.interceptors
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.tokenstore)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.tokenstore ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.trust)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.trust ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j.policyhandlers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j.policyhandlers
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.bug671)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.bug671 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.conversation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation.dkalgo)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.conversation.dkalgo
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content.keyvalues)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content.keyvalues
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.xmlimpl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.xmlimpl
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.TypeCodePackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.TypeCodePackage
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.portable)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.portable
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CosNaming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CosNaming
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer.POAPackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer.POAPackage
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle/2.0.7' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle' uri='../org/apache/cxf/cxf-bundle/2.0.7/cxf-bundle-2.0.7.jar' version='2.0.7'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2846351
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.common.util,javax.jws,org.apache.cxf,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.xml.stream,javax.security.auth.callback,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.staxutils,org.apache.ws.security'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,org.apache.cxf.jaxws.support,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.xml.transform.sax,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.datatype,org.apache.cxf.tools.util,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.tools.plugin,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.xml.stream.events,org.w3c.dom.ls,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,javax.wsdl.extensions.mime,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,javax.xml.transform.sax,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.extension,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,org.xmlsoap.schemas.wsdl.http,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.codehaus.jra,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.xml.ws,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap,javax.jws.soap,javax.jws'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.transports.http,javax.wsdl.xml,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.transport.local,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxws.support,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.handler,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.xml.resolver,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.message,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws,org.apache.cxf.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.databinding.source,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.jdom.output,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.bus,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,javanet.staxutils,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,javax.xml.transform.stream,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.common,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,com.sun.tools.xjc.api.impl.s2j,com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.xml.transform.dom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.frontend,org.apache.cxf.binding.xml,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.service,javax.wsdl,javax.activation,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,javax.xml.validation,org.apache.cxf.common.util,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,org.apache.cxf.databinding.source,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.resource,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.context,org.apache.cxf.ws.policy.attachment.external,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.validation,javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.tools.ant.types,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.tools.ant,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.xml.resolver,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.codehaus.jra,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.binding.http'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf,org.apache.cxf.transports.http.configuration'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='org.apache.cxf.attachment,javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='javax.xml.namespace,javax.activation,org.apache.cxf.aegis,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.wsdl.extensions.mime,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.extensions.http,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.wsdl.factory,org.apache.cxf.tools.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.misc.processor.address,org.xml.sax,javax.wsdl.xml,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.message,javax.naming,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,org.apache.cxf.wsdl,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,org.mozilla.javascript,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf,javax.xml.ws,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,org.apache.cxf.message,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.xml.sax,javax.wsdl.xml,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.ws.commons.schema.resolver,org.apache.xml.resolver.helpers,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.jaxws.binding.soap,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.common.util.factory,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlsoap.schemas.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.wsdl.extensions,javax.jws,org.apache.cxf,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.cxf.common.logging,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util.factory'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf,org.apache.cxf.common.i18n,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.7'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api.impl.s2j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api.impl.s2j
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javanet.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javanet.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util.factory)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util.factory ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=2.0.7))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http ;version=2.0.7
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle/2.0.10' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle' uri='../org/apache/cxf/cxf-bundle/2.0.10/cxf-bundle-2.0.10.jar' version='2.0.10'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2965058
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.common.util,javax.jws,org.apache.cxf,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.xml.stream,javax.security.auth.callback,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.ws.security.processor,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,org.apache.cxf.jaxws.support,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.xml.transform.sax,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.datatype,org.apache.cxf.tools.util,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.tools.plugin,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.xml.stream.events,org.w3c.dom.ls,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,javax.wsdl.extensions.mime,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,javax.xml.transform.sax,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,org.xmlsoap.schemas.wsdl.http,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.codehaus.jra,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.transports.http_jetty.configuration,org.apache.cxf.configuration.spring,javax.xml.bind,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.xml.ws,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap,javax.jws.soap,javax.jws'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.transport.local,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxws.support,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.handler,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.configuration.security,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.databinding.source,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.jdom.output,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.common,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,com.sun.tools.xjc.api.impl.s2j,com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.xml.transform.dom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.service,javax.wsdl,javax.activation,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,org.apache.cxf.databinding.source,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.resource,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.validation,javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.tools.ant.types,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.tools.ant,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.catalog,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.xml.sax,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.codehaus.jra,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.binding.http'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='javax.xml.namespace,javax.activation,org.apache.cxf.aegis,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.wsdl.extensions.mime,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.extensions.http,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.wsdl.factory,org.apache.cxf.tools.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.misc.processor.address,org.xml.sax,javax.wsdl.xml,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms.support,org.springframework.jms,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.ws.addressing,org.springframework.jms.connection,org.springframework.beans.factory,org.apache.cxf.wsdl,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.cxf.transport.jms.continuations,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,org.apache.cxf.continuations,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,org.mozilla.javascript,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf,javax.xml.ws,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.jaxws.binding.soap,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.workqueue,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlsoap.schemas.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.wsdl.extensions,javax.jws,org.apache.cxf,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util.factory'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf,org.apache.cxf.common.i18n,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api.impl.s2j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api.impl.s2j
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util.factory)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util.factory ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle/2.1.0' presentationname='Apache CXF Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle' uri='../org/apache/cxf/cxf-bundle/2.1/cxf-bundle-2.1.jar' version='2.1.0'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    3760197
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,com.ibm.wsdl,javax.xml.namespace,org.apache.cxf.binding.corba.types,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.commons.codec,org.apache.commons.codec.binary,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.omg.CORBA.portable,org.apache.cxf.service.model,org.objectweb.asm,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.common.xmlschema'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.service.model,org.springframework.context,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.springframework.beans.factory.support,javax.jws.soap,org.apache.cxf.tools.java2wsdl.processor.internal,org.springframework.beans.factory.xml,javax.jws,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.xfire.aegis.type.java5'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.types'/>
    <p n='uses' v='javax.wsdl,javax.xml.stream.events,org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,javax.xml.namespace,org.omg.CORBA.portable,org.apache.cxf.service.model,org.omg.CORBA,org.apache.cxf.binding.corba.runtime,org.apache.cxf.binding.corba,org.apache.cxf.common.util,org.apache.commons.codec.binary,org.apache.cxf.wsdl11,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.toolspec.toolspecs'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.security.auth.callback,javax.xml.stream,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.staxutils,org.apache.ws.security'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.java2wsdl.processor.internal.simple,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='org.apache.abdera.model,org.codehaus.jettison.mapped,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.abdera.parser,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream,org.apache.abdera,org.w3c.dom,org.apache.abdera.writer,javax.xml.bind.annotation,org.apache.cxf.transport,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs,javax.xml.bind,org.apache.cxf.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.javascript.service,org.apache.cxf.bus.spring,org.springframework.context.support,org.springframework.core.io,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.springframework.beans.factory.support,org.apache.cxf.common.xmlschema,org.springframework.beans.factory.xml,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.datatype,org.apache.cxf.tools.util,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.tools.plugin,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.commons.logging,org.apache.cxf.aegis,org.jdom,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.xml.stream.events,org.w3c.dom.ls,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,javax.xml.transform.sax,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.wsdl'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.corba.common.idltypes,org.apache.ws.commons.schema,org.apache.cxf.tools.corba.common,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.corba.utils,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,org.apache.cxf,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.extension,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,org.xmlsoap.schemas.wsdl.http,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.cxf.binding.corba.wsdl,org.apache.ws.commons.schema,com.ibm.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util.xml,org.apache.cxf.tools.util,com.ibm.wsdl.xml,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,org.apache.cxf.tools.common,com.ibm.wsdl.extensions,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.constants'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.codehaus.jra,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.jws,javax.xml.bind.annotation,org.apache.cxf.service.model,javax.xml.ws,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.processors.idl'/>
    <p n='uses' v='org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,antlr.collections.impl,javax.wsdl.factory,org.apache.cxf.tools.common,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.ws.commons.schema.constants,org.apache.cxf.wsdl,antlr,javax.wsdl,org.apache.ws.commons.schema,org.apache.cxf.tools.corba.idlpreprocessor,org.apache.cxf.tools.corba.common,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,antlr.collections,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,javax.xml.bind.annotation.adapters,org.apache.cxf.frontend,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common.model,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,javax.annotation,org.apache.cxf.jaxrs'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.transports.http,javax.wsdl.xml,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.transport.local,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxws.support,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.handler,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.extension,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans.factory.wiring,org.apache.cxf.common.util,org.springframework.beans,javax.xml.bind,org.springframework.util,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.ws.rs,org.apache.cxf.message,org.apache.cxf.jaxrs.model,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.xml.resolver,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba'/>
    <p n='uses' v='org.apache.cxf.tools.corba.processors.idl,org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.corba.common,org.apache.cxf.tools.corba.processors.wsdl,org.apache.cxf.common.i18n,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.message,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.ws.commons.schema.utils,org.apache.cxf.staxutils,org.jdom.output,org.jaxen.jdom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.service'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.soap,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.bus,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.common.idltypes'/>
    <p n='uses' v='org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.idlpreprocessor'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,javanet.staxutils,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,javax.xml.transform.stream,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2ws.util'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,com.sun.tools.xjc.api.impl.s2j,com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.xml.transform.dom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,javax.xml.transform.sax,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.headers,javax.xml.ws.handler,javax.xml.namespace,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.frontend,org.apache.cxf.binding.xml,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.jaxws.binding.http,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,com.sun.xml.bind.api,org.w3c.dom,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.validator.internal,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.common,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.xmlbeans.impl.values,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.xmlbeans.impl.schema,org.apache.cxf.common.xmlschema,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.resource,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.context,org.apache.cxf.ws.policy.attachment.external,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.validation,javax.xml.namespace,com.sun.xml.bind.api,org.apache.cxf.jaxb,org.apache.cxf.service.model,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.codehaus.xfire.aegis.type.java5,org.jdom,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.catalog,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.xml.resolver,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.corba.utils'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.javascript'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.javascript.service,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.javascript,org.apache.cxf.tools.common.toolspec,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,org.apache.cxf.javascript.types,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.interceptors'/>
    <p n='uses' v='org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.omg.CORBA.TypeCodePackage,org.w3c.dom,org.omg.CORBA.portable,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript.types'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.common.util,org.apache.cxf.javascript,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.interceptor,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.codehaus.jra,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.binding.http'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf,org.apache.cxf.transports.http.configuration'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='org.apache.cxf.attachment,javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.javascript'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.javascript.service,org.apache.cxf.aegis.type.mtom,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf.javascript.types,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.activation,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.jaxen,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.wsdl.extensions.mime,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.extensions.http,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.wsdl.factory,org.apache.cxf.tools.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.misc.processor.address,org.xml.sax,javax.wsdl.xml,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.jaxen,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.jaxen.jdom'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.message,javax.naming,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,org.apache.cxf.wsdl,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.bus,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba'/>
    <p n='uses' v='org.apache.cxf.binding.corba.utils,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer.POAPackage,org.omg.PortableServer,org.apache.cxf.binding.corba.runtime,org.apache.cxf.message,org.apache.cxf.binding.corba.types,org.apache.cxf.binding,org.apache.cxf.ws.addressing,javax.xml.ws,org.omg.CosNaming,org.omg.CORBA.TypeCodePackage,org.omg.CORBA.portable,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.omg.CORBA,org.apache.cxf.binding.corba.interceptors,javax.annotation,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,org.mozilla.javascript,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf,javax.xml.ws,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.jaxws.context,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.configuration,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.frontend,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.jaxb,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.activation,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.xml.sax,javax.wsdl.xml,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.ws.commons.schema.resolver,org.apache.xml.resolver.helpers,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,javax.xml.validation,org.apache.cxf.aegis.type,org.apache.cxf.aegis.type.java5,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.corba.runtime'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.binding.corba.wsdl,javax.xml.namespace,org.omg.PortableServer,org.omg.CORBA.portable,org.apache.cxf.service.model,org.apache.cxf.transport,org.omg.CORBA,org.apache.cxf.binding.corba,org.apache.cxf.binding.corba.types,org.apache.cxf.message,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlsoap.schemas.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.ws.policy,javax.xml.ws.wsaddressing,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator,org.apache.cxf.tools.java2ws.util,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.cxf.common.logging,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.io,javax.xml.ws.spi,org.apache.cxf,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.jaxrs,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2js'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.java2js.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=antlr)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package antlr.collections.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api.impl.s2j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api.impl.s2j
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javanet.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javanet.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.core
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.ext
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.binary)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec.binary
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.interceptors)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.interceptors ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.runtime)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.runtime ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.types)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.types ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.utils)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.utils ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.corba.wsdl)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.corba.wsdl ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.service)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.service ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.javascript.types)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.javascript.types ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.idltypes)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.idltypes ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.common.toolspec.toolspecs)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.common.toolspec.toolspecs
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.idlpreprocessor)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.idlpreprocessor ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.idl)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.idl ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.processors.wsdl)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.processors.wsdl ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.corba.utils)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.corba.utils ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2js.processor)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2js.processor ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2ws.util)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2ws.util ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.simple.generator.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.javascript)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.javascript ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type.java5)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type.java5
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.TypeCodePackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.TypeCodePackage
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA.portable)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA.portable
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CosNaming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CosNaming
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.PortableServer.POAPackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.PortableServer.POAPackage
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http ;version=2.1.0
  </require>
</resource>
<resource id='cxf-dosgi-ri-dsw-cxf/1.0.0' presentationname='CXF Distributed Software Bundle' symbolicname='cxf-dosgi-ri-dsw-cxf' uri='../org/apache/cxf/dosgi/cxf-dosgi-ri-dsw-cxf/1.0/cxf-dosgi-ri-dsw-cxf-1.0.jar' version='1.0.0'>
  <description>
    This bundle contains the implementation required by the CXF
    
    
    
    
    
    
    
    
    
    
    
     Distributed
    
     Software
    
     Bundle
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    78814
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='CXF Distributed Software Bundle'/>
    <p n='symbolicname' v='cxf-dosgi-ri-dsw-cxf'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.discovery'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.dosgi.dsw.service'/>
    <p n='uses' v='org.osgi.service.discovery,org.osgi.service.event,org.osgi.service.distribution,org.osgi.framework,org.osgi.util.tracker'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.distribution'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.dosgi.dsw.handlers'/>
    <p n='uses' v='org.apache.cxf.transport.servlet,javax.xml.namespace,org.osgi.framework,org.apache.cxf.frontend,org.apache.cxf.aegis.databinding,org.apache.cxf.feature,org.apache.cxf.service.factory,javax.servlet,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.dosgi.dsw,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.dosgi.dsw.qos,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.osgi.service.http,org.apache.cxf.transport,org.osgi.service.discovery,org.apache.cxf.dosgi.dsw.service,org.apache.cxf,org.osgi.util.tracker'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.dosgi.dsw'/>
    <p n='uses' v='org.osgi.framework.hooks.service,org.osgi.service.distribution,org.osgi.framework,org.apache.cxf.dosgi.dsw.hooks,org.jdom,org.osgi.service.cm,org.osgi.service.discovery,org.apache.cxf.dosgi.dsw.service,org.jdom.input,org.springframework.osgi.context.support,org.apache.cxf.dosgi.dsw.qos'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.dosgi.dsw.hooks'/>
    <p n='uses' v='org.osgi.framework.hooks.service,org.apache.cxf.endpoint,org.osgi.framework,org.apache.cxf.dosgi.dsw.handlers,org.apache.cxf.transport,org.osgi.service.discovery,org.apache.cxf.dosgi.dsw.service,org.apache.cxf.dosgi.dsw,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.dosgi.dsw.qos'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.dosgi.dsw)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.dosgi.dsw ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.dosgi.dsw.handlers)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.dosgi.dsw.handlers ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.dosgi.dsw.hooks)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.dosgi.dsw.hooks ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.dosgi.dsw.qos)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.dosgi.dsw.qos ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.dosgi.dsw.service)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.dosgi.dsw.service ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.input ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework.hooks.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework.hooks.service
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.discovery)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.discovery ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.distribution)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.distribution ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.event ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.http)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.http ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context.support)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context.support ;version=1.2.0
  </require>
</resource>
<resource id='cxf-dosgi-ri-singlebundle-distribution/1.0.0' presentationname='Distributed OSGi Distribution Software Single-Bundle Distribution' symbolicname='cxf-dosgi-ri-singlebundle-distribution' uri='../org/apache/cxf/dosgi/cxf-dosgi-ri-singlebundle-distribution/1.0/cxf-dosgi-ri-singlebundle-distribution-1.0.jar' version='1.0.0'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    8214944
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Distributed OSGi Distribution Software Single-Bundle Distribution'/>
    <p n='symbolicname' v='cxf-dosgi-ri-singlebundle-distribution'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.apache.cxf.ws.security.policy.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.trust'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.databinding.source,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.common.classloader,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.wsdl11,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.spi'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.wsaddressing,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.security.policy,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf.endpoint,org.apache.cxf.ws.security.wss4j.policyhandlers,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.binding.soap.saaj,org.apache.cxf,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.service.factory,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.io,org.apache.cxf.service,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.common.logging,org.apache.cxf.aegis,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.resources'/>
    <p n='version' t='version' v='2.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.security.policy,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.dosgi.dsw'/>
    <p n='uses' v='org.osgi.framework.hooks.service,org.osgi.service.distribution,org.osgi.framework,org.apache.cxf.dosgi.dsw.hooks,org.jdom,org.osgi.service.cm,org.osgi.service.discovery,org.apache.cxf.dosgi.dsw.service,org.jdom.input,org.apache.cxf.dosgi.dsw.qos'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.dosgi.dsw.hooks'/>
    <p n='uses' v='org.osgi.framework.hooks.service,org.apache.cxf.endpoint,org.osgi.framework,org.apache.cxf.dosgi.dsw.handlers,org.apache.cxf.transport,org.osgi.service.discovery,org.apache.cxf.dosgi.dsw.service,org.apache.cxf.dosgi.dsw,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.configuration.security,org.apache.cxf.bus.spring,org.apache.cxf.configuration.jsse.spring,org.apache.cxf.common.util,org.apache.cxf.transports.http_jetty.configuration,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jdom.output'/>
    <p n='uses' v='org.jdom.adapters,org.jdom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.http'/>
    <p n='uses' v='javax.servlet'/>
    <p n='version' t='version' v='2.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.service.invoker,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.databinding.source.mime,org.apache.cxf,org.apache.cxf.clustering,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='org.apache.cxf.jaxb'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.wsaddressing'/>
    <p n='uses' v='javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.servlet,org.apache.cxf.transport.https,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,org.apache.cxf.wsdl.http,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.dosgi.dsw.qos'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.spi'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.apache.cxf.service.model,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='org.apache.cxf'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,org.apache.cxf.jaxws.context,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.endpoint,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.common.util,org.apache.cxf.configuration,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.common,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.tokenstore'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.dosgi.dsw.handlers'/>
    <p n='uses' v='org.apache.cxf.transport.servlet,org.osgi.framework,org.apache.cxf.frontend,org.apache.cxf.aegis.databinding,org.apache.cxf.feature,org.apache.cxf.service.factory,javax.servlet,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.dosgi.dsw,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.dosgi.dsw.qos,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.osgi.service.http,org.apache.cxf.transport,org.osgi.service.discovery,org.apache.cxf.dosgi.dsw.service,org.apache.cxf,org.osgi.util.tracker'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.configuration.security,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.aegis.xml.stax,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jdom.adapters'/>
    <p n='uses' v='org.jdom,org.jdom.input'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.jsp.resources'/>
    <p n='version' t='version' v='2.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='org.apache.cxf.bus.spring,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jdom.input'/>
    <p n='uses' v='org.jdom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.type.xml,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.dosgi.singlebundle'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.buslifecycle,org.apache.cxf.configuration,org.apache.cxf.common.classloader,org.apache.cxf,org.apache.cxf.common.injection,org.apache.cxf.configuration.spring,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet'/>
    <p n='version' t='version' v='2.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='org.apache.cxf.aegis,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.soap'/>
    <p n='uses' v='javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.apache.cxf.transport.jms,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,org.apache.cxf.aegis,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j.policyhandlers'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.security.policy,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf,org.apache.cxf.helpers,org.apache.cxf.ws.security.tokenstore'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.apache.cxf.common.classloader,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jdom.xpath'/>
    <p n='uses' v='org.jdom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='org.apache.cxf.frontend,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.distribution'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment.external,org.apache.cxf.ws.policy,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.jaxb'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.common.classloader,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jdom'/>
    <p n='uses' v='org.jdom.filter,org.jdom.output'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.dosgi.dsw.service'/>
    <p n='uses' v='org.osgi.service.discovery,org.osgi.service.event,org.osgi.service.distribution,org.osgi.framework,org.osgi.util.tracker'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.i18n,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.io,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,org.apache.cxf.frontend,org.apache.cxf.bus.spring,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.http'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,org.apache.cxf.tools.util,org.apache.cxf.tools.common'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='org.apache.cxf.ws.rm,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.dosgi.discovery.local'/>
    <p n='uses' v='org.osgi.service.discovery,org.jdom.input,org.osgi.framework,org.osgi.util.tracker,org.jdom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.transport.jms.continuations,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.security,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.i18n,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.i18n,org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.transport.jms,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.common.injection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,org.apache.cxf.bus.spring,org.apache.cxf.message,javax.servlet,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.apache.cxf.wsdl.http,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.frontend,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.jaxb,org.apache.cxf.workqueue,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.wsdl.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.common.injection,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.configuration,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.transport,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='org.apache.cxf.ws.security.policy.builders,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jdom.transform'/>
    <p n='uses' v='org.jdom,org.jdom.input,org.jdom.output'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.aegis.xml.stax,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.type.java5,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='org.jdom,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,javax.xml.ws.wsaddressing,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.jdom,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.endpoint,org.apache.cxf.wsdl.http,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.toolspec,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,org.apache.cxf.ws.security.policy,org.apache.cxf.service.invoker,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.security.transport,org.apache.cxf.ws.security.trust,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.ws.security,org.apache.cxf.ws.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.ws.security.wss4j,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers,org.apache.cxf.ws.security.tokenstore'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.discovery'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.common.i18n,org.apache.cxf.common,org.apache.cxf.io,javax.xml.ws.spi,org.apache.cxf,javax.xml.ws.wsaddressing,javax.xml.ws,org.apache.cxf.staxutils,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jdom.filter'/>
    <p n='uses' v='org.jdom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.3.0)(!(version&gt;=2.6.0)))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=[2.3.0,2.6.0)
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.3.0)(!(version&gt;=2.6.0)))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=[2.3.0,2.6.0)
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.resources)(version&gt;=2.3.0)(!(version&gt;=2.6.0)))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp.resources ;version=[2.3.0,2.6.0)
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.resources)(version&gt;=2.3.0)(!(version&gt;=2.6.0)))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.resources ;version=[2.3.0,2.6.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework.hooks.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework.hooks.service
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.discovery)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.discovery ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.distribution)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.distribution ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.event ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.http)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.http ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='felix-shell-extension/1.0.0' presentationname='CXF Distributed OSGi Temporary Private Apache Felix Shell TUI Build' symbolicname='felix-shell-extension' uri='../org/apache/cxf/dosgi/felix-shell-extension/1.0/felix-shell-extension-1.0.jar' version='1.0.0'>
  <description>
    A simple textual user interface for Felix' shell service.
  </description>
  <documentation>
    http://oscar-osgi.sf.net/obr2/felix-shell-extension/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12835
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='CXF Distributed OSGi Temporary Private Apache Felix Shell TUI Build'/>
    <p n='symbolicname' v='felix-shell-extension'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(service=org.apache.felix.shell.ShellService)' multiple='true' name='service' optional='false'>
    Import Service org.apache.felix.shell.ShellService
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
</resource>
<resource id='cxf-dosgi-ri-discovery-local/1.0.0' presentationname='CXF Local Discovery Service Bundle' symbolicname='cxf-dosgi-ri-discovery-local' uri='../org/apache/cxf/dosgi/cxf-dosgi-ri-discovery-local/1.0/cxf-dosgi-ri-discovery-local-1.0.jar' version='1.0.0'>
  <description>
    This bundle contains the implementation required by the CXF
    
    
    
    
    
    
    
    
    
    
    
     Local
     Discovery
    
     Service
    
     Bundle
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    25228
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='CXF Local Discovery Service Bundle'/>
    <p n='symbolicname' v='cxf-dosgi-ri-discovery-local'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.discovery'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.dosgi.discovery.local'/>
    <p n='uses' v='org.osgi.service.discovery,org.jdom.input,org.osgi.framework,org.osgi.util.tracker,org.jdom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.dosgi.discovery.local)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.dosgi.discovery.local ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.input ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.discovery)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.discovery ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='cxf-dosgi-ri-systests-common/1.0.0' presentationname='CXF DOSGi System Tests Common Bundle' symbolicname='cxf-dosgi-ri-systests-common' uri='../org/apache/cxf/dosgi/systests/cxf-dosgi-ri-systests-common/1.0/cxf-dosgi-ri-systests-common-1.0.jar' version='1.0.0'>
  <description>
    This bundle contains common classes used by the system tests.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    24902
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='CXF DOSGi System Tests Common Bundle'/>
    <p n='symbolicname' v='cxf-dosgi-ri-systests-common'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.dosgi.systests.common'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.dosgi.samples.greeter,org.apache.cxf.endpoint,org.osgi.framework,org.apache.cxf.aegis.databinding,org.apache.cxf.frontend,org.apache.cxf.transport,org.osgi.service.cm,org.apache.cxf.service.factory,org.springframework.core.io,org.osgi.util.tracker,org.springframework.osgi.test'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.dosgi.samples.greeter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.dosgi.samples.greeter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.dosgi.systests.common)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.dosgi.systests.common ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.test)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.test ;version=1.1.0
  </require>
</resource>
<resource id='cxf-dosgi-ri-samples-spring-dm-impl/1.0.0' presentationname='CXF Distributed OSGi Spring-DM Sample Implementation Bundle' symbolicname='cxf-dosgi-ri-samples-spring-dm-impl' uri='../org/apache/cxf/dosgi/samples/cxf-dosgi-ri-samples-spring-dm-impl/1.0/cxf-dosgi-ri-samples-spring-dm-impl-1.0.jar' version='1.0.0'>
  <description>
    This bundle contains the server-side implementation of the
    
    
    
    
    
    
    
    
    
    
    
     Distributed
    
     OSGi
     with
     Spring-DM
    
     sample.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10599
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='CXF Distributed OSGi Spring-DM Sample Implementation Bundle'/>
    <p n='symbolicname' v='cxf-dosgi-ri-samples-spring-dm-impl'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.dosgi.samples.springdm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.dosgi.samples.springdm
  </require>
</resource>
<resource id='cxf-dosgi-ri-samples-greeter-impl/1.0.0' presentationname='CXF Distributed OSGi Greeter Demo Service Implementation Bundle' symbolicname='cxf-dosgi-ri-samples-greeter-impl' uri='../org/apache/cxf/dosgi/samples/cxf-dosgi-ri-samples-greeter-impl/1.0/cxf-dosgi-ri-samples-greeter-impl-1.0.jar' version='1.0.0'>
  <description>
    This bundle contains the implementation of the CXF Distributed
    
    
    
    
    
    
    
    
    
    
    
     OSGi
     Greeter
    
     Demo
     Implementation
    
    
    
     Bundle
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10960
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='CXF Distributed OSGi Greeter Demo Service Implementation Bundle'/>
    <p n='symbolicname' v='cxf-dosgi-ri-samples-greeter-impl'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.dosgi.samples.greeter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.dosgi.samples.greeter
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
</resource>
<resource id='cxf-dosgi-ri-samples-spring-dm-client/1.0.0' presentationname='CXF Distributed OSGi Spring-DM Sample Client Bundle' symbolicname='cxf-dosgi-ri-samples-spring-dm-client' uri='../org/apache/cxf/dosgi/samples/cxf-dosgi-ri-samples-spring-dm-client/1.0/cxf-dosgi-ri-samples-spring-dm-client-1.0.jar' version='1.0.0'>
  <description>
    This bundle contains the client-side implementation of the
    
    
    
    
    
    
    
    
    
    
    
     Distributed
    
     OSGi
     with
     Spring-DM
    
     sample.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11853
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='CXF Distributed OSGi Spring-DM Sample Client Bundle'/>
    <p n='symbolicname' v='cxf-dosgi-ri-samples-spring-dm-client'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.dosgi.samples.springdm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.dosgi.samples.springdm
  </require>
</resource>
<resource id='cxf-dosgi-ri-samples-greeter-client/1.0.0' presentationname='CXF Distributed OSGi Greeter Demo Client Bundle' symbolicname='cxf-dosgi-ri-samples-greeter-client' uri='../org/apache/cxf/dosgi/samples/cxf-dosgi-ri-samples-greeter-client/1.0/cxf-dosgi-ri-samples-greeter-client-1.0.jar' version='1.0.0'>
  <description>
    This bundle contains the implementation the Distributed OSGi
    
    
    
    
    
    
    
    
    
    
    
     Greeter
    
     Demo
     Client
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16803
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='CXF Distributed OSGi Greeter Demo Client Bundle'/>
    <p n='symbolicname' v='cxf-dosgi-ri-samples-greeter-client'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.dosgi.samples.greeter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.dosgi.samples.greeter
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='cxf-dosgi-ri-samples-spring-dm-interface/1.0.0' presentationname='CXF Distributed OSGi Spring-DM Sample Interface Bundle' symbolicname='cxf-dosgi-ri-samples-spring-dm-interface' uri='../org/apache/cxf/dosgi/samples/cxf-dosgi-ri-samples-spring-dm-interface/1.0/cxf-dosgi-ri-samples-spring-dm-interface-1.0.jar' version='1.0.0'>
  <description>
    This bundle contains the interfaces of the Distributed OSGi
    
    
    
    
    
    
    
    
    
    
    
     with
     Spring-DM
    
     sample.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    9385
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='CXF Distributed OSGi Spring-DM Sample Interface Bundle'/>
    <p n='symbolicname' v='cxf-dosgi-ri-samples-spring-dm-interface'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.dosgi.samples.springdm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
</resource>
<resource id='cxf-dosgi-ri-samples-greeter-interface/1.0.0' presentationname='CXF Distributed OSGi Greeter Demo Interface Bundle' symbolicname='cxf-dosgi-ri-samples-greeter-interface' uri='../org/apache/cxf/dosgi/samples/cxf-dosgi-ri-samples-greeter-interface/1.0/cxf-dosgi-ri-samples-greeter-interface-1.0.jar' version='1.0.0'>
  <description>
    This bundle contains the implementation of the CXF Distributed
    
    
    
    
    
    
    
    
    
    
    
     OSGi
     Greeter
    
     Demo
     Interfaces
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10300
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='CXF Distributed OSGi Greeter Demo Interface Bundle'/>
    <p n='symbolicname' v='cxf-dosgi-ri-samples-greeter-interface'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.dosgi.samples.greeter'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.dosgi.samples.greeter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.dosgi.samples.greeter
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle-minimal/2.0.12' presentationname='Apache CXF Minimal Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle-minimal' uri='../org/apache/cxf/cxf-bundle-minimal/2.0.12/cxf-bundle-minimal-2.0.12.jar' version='2.0.12'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2525392
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Minimal Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle-minimal'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.headers,javax.xml.ws.handler,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.service,javax.wsdl,javax.activation,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,org.apache.cxf.databinding.source,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management,org.apache.cxf.management.annotation,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.security.auth.callback,javax.xml.stream,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.ws.security.processor,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,org.apache.cxf.jaxws.support,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.xml.transform.sax,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,org.xmlsoap.schemas.wsdl.http,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.validation,javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.tools.ant.types,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.tools.ant,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.xml.sax,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.transports.http_jetty.configuration,org.apache.cxf.configuration.spring,javax.xml.bind,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.xml.ws,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap,javax.jws.soap,javax.jws'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.io,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='javax.xml.namespace,javax.activation,org.apache.cxf.aegis,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.version,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxws.support,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.handler,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms,org.springframework.jms.support,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.springframework.beans.factory,org.springframework.jms.connection,org.apache.cxf.wsdl,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.cxf.transport.jms.continuations,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,org.apache.cxf.security,org.apache.cxf.continuations,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.transport.jms,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.jaxws.binding.soap,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.common.util.factory,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.databinding.source,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.jdom.output,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.configuration.security,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlsoap.schemas.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.aop,org.springframework.aop.framework,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.wsdl.extensions,javax.jws,org.apache.cxf,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util.factory'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf,org.apache.cxf.common.i18n,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.0.12'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util.factory)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util.factory ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=2.0.12))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http ;version=2.0.12
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle-minimal/2.1.5' presentationname='Apache CXF Minimal Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle-minimal' uri='../org/apache/cxf/cxf-bundle-minimal/2.1.5/cxf-bundle-minimal-2.1.5.jar' version='2.1.5'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2858386
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Minimal Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle-minimal'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.xfire.aegis.type.java5'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.binding.xml,org.apache.cxf.feature,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.ws.soap,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.objectweb.asm,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.security.auth.callback,javax.xml.stream,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.ws.security.processor,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,javax.xml.parsers,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,javax.mail.util,org.apache.cxf.endpoint,javax.imageio,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.imageio.stream,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.attachment,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.xmlbeans.impl.values,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.xmlbeans.impl.schema,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.jaxb.attachment,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.codehaus.xfire.aegis.type.java5,org.jdom,javax.xml.bind.annotation,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.ws.commons.schema.utils,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.xml.sax,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas.configuration'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.bus.spring,org.apache.cxf.configuration.jsse.spring,org.apache.cxf.common.util,org.apache.cxf.transports.http_jetty.configuration,org.springframework.beans.factory,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.xml.namespace,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.util,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,repackage,org.apache.cxf.tools.common,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,javax.xml.bind.annotation.adapters,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.clustering,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.activation,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.jaxen,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.version,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.jaxen,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.jaxen.jdom'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms,org.springframework.jms.support,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.ws.addressing,org.springframework.beans.factory,org.springframework.jms.connection,org.apache.cxf.wsdl,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.cxf.transport.jms.continuations,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,org.apache.cxf.security,org.apache.cxf.continuations,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.transport.jms,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.jaxws.context,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.common,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas.wsdl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.workqueue,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.wsdl.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.apache.cxf.staxutils,org.jaxen.jdom,org.jdom.output,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.configuration.security,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop,net.sf.cglib.proxy,org.springframework.aop.framework,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.ws.policy,javax.xml.ws.wsaddressing,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.xml.sax,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.common,org.apache.cxf.io,javax.xml.ws.spi,org.apache.cxf,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.1.5))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.1.5))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.dom ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.1.5))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.1.5))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.model ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.1.5))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.1.5))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.1.5))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.util ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.1.5))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.validator ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.1.5))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type.java5)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type.java5
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
  <require extend='false' filter='(&amp;(package=schemas)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas
  </require>
  <require extend='false' filter='(&amp;(package=schemas.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas.configuration
  </require>
  <require extend='false' filter='(&amp;(package=schemas.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas.wsdl
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle-minimal/2.0.8' presentationname='Apache CXF Minimal Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle-minimal' uri='../org/apache/cxf/cxf-bundle-minimal/2.0.8/cxf-bundle-minimal-2.0.8.jar' version='2.0.8'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2375669
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Minimal Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle-minimal'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.frontend,org.apache.cxf.binding.xml,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.service,javax.wsdl,javax.activation,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,org.apache.cxf.databinding.source,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.xml.stream,javax.security.auth.callback,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,org.apache.cxf.jaxws.support,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.xml.transform.sax,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.extension,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,org.xmlsoap.schemas.wsdl.http,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.context,org.apache.cxf.ws.policy.attachment.external,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.validation,javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.tools.ant.types,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.tools.ant,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.xml.ws,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap,javax.jws.soap,javax.jws'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf,org.apache.cxf.transports.http.configuration'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='org.apache.cxf.attachment,javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.jaxws.support,org.apache.cxf.binding.soap,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='javax.xml.namespace,javax.activation,org.apache.cxf.aegis,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.transports.http,javax.wsdl.xml,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxws.support,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.handler,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.message,javax.naming,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,org.apache.cxf.wsdl,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,javax.xml.bind,org.springframework.util,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.xml.resolver,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.xml.sax,javax.wsdl.xml,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.ws.commons.schema.resolver,org.apache.xml.resolver.helpers,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.jaxws.binding.soap,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.common.util.factory,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.databinding.source,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.jdom.output,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.message,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws,org.apache.cxf.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlsoap.schemas.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.wsdl.extensions,javax.jws,org.apache.cxf,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.bus,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.cxf.common.logging,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util.factory'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,javanet.staxutils,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,javax.xml.transform.stream,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf,org.apache.cxf.common.i18n,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=javanet.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javanet.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util.factory)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util.factory ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.bundle-minimal/2.2.1' presentationname='Apache CXF Minimal Bundle Jar' symbolicname='org.apache.cxf.bundle-minimal' uri='../org/apache/cxf/cxf-bundle-minimal/2.2.1/cxf-bundle-minimal-2.2.1.jar' version='2.2.1'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2985441
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Minimal Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.bundle-minimal'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='javax.net.ssl,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.helpers,org.apache.neethi,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.namespace,org.apache.cxf.transport,org.springframework.beans,org.springframework.context'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.namespace,org.apache.cxf.binding.xml.interceptor,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.trust'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.xml.security.keys.content.keyvalues,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,org.apache.cxf.service,javax.security.auth.callback,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,org.apache.cxf.configuration,org.apache.cxf.common.classloader,org.apache.ws.security.conversation,org.apache.ws.security.conversation.dkalgo,org.apache.cxf,org.apache.ws.security.processor,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.ws.security.tokenstore'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.springframework.core.io.support,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.context,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.core.io,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.resource,org.springframework.beans,org.springframework.beans.factory,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.springframework.context.event,org.apache.cxf,org.springframework.beans.factory.config,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.core,org.apache.cxf.extension,org.apache.cxf.configuration,org.apache.cxf.helpers,javax.xml.parsers,javax.xml.stream,javax.annotation,org.apache.cxf.common.injection,org.apache.cxf.feature,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.endpoint,org.apache.cxf.jaxws,org.apache.cxf,javax.xml.ws,org.apache.cxf.service.model,org.apache.cxf.service,javax.wsdl,javax.xml.ws.soap,javax.xml.namespace,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.jaxws.binding,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.wsdl,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.util,javax.jws,org.apache.cxf.jaxb,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.apache.cxf.frontend,org.apache.cxf.databinding,javax.xml.bind.annotation,org.apache.cxf.databinding.source,org.apache.cxf.wsdl11,org.apache.cxf.helpers,javax.xml.soap,javax.activation,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.helpers,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.net.ssl,javax.security.auth.x500,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.configuration.security,org.apache.cxf.transport.http,javax.servlet.http,org.apache.cxf.security.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.datatype,javax.xml.bind.annotation.adapters,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.service,javax.xml.bind.attachment,javax.xml.validation,org.apache.cxf.jaxb.attachment,javax.xml.bind,javax.xml.transform.dom,javax.xml.transform,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.factory,org.apache.cxf.common.xmlschema,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,javax.xml.stream,org.apache.cxf.interceptor,javax.xml.transform.stream,org.apache.cxf.staxutils,org.apache.cxf.helpers,org.apache.ws.commons.schema.utils,org.apache.commons.lang.builder,org.apache.commons.lang,org.xml.sax,org.objectweb.asm,com.sun.xml.bind.marshaller'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.configuration.security,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf.jaxws.handler,javax.xml.ws,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.stream,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.staxutils,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.namespace,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.context,org.apache.cxf.common.logging,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap,org.apache.cxf.io,javax.xml.bind,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management,org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='javax.xml.namespace,org.apache.ws.security.components.crypto,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.ws.security.handler,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security,org.apache.cxf.endpoint,org.apache.cxf.ws.security.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.common.classloader,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,javax.xml.stream,org.apache.cxf.helpers,org.apache.ws.security.message,org.apache.cxf.ws.security.wss4j.policyhandlers,org.apache.cxf.binding.soap.saaj,org.apache.cxf.security,javax.security.auth.callback,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.ws.security.util,org.apache.ws.security.message.token,javax.xml.transform.dom,org.apache.ws.security.processor,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.rm.persistence,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.common.util,javax.annotation,javax.xml.parsers,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.w3c.dom,org.apache.cxf.transport.jms,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.databinding,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.extension,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management,org.apache.cxf.buslifecycle'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.addressing.v200408,javax.xml.bind.annotation,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.addressing,org.apache.cxf.helpers,org.apache.cxf.ws.rm.manager,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.policy,javax.xml.datatype,javax.xml.bind,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.service.invoker,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.binding.soap.model,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.ws.rm.soap,javax.annotation,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,javax.activation,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.interceptor,javax.xml.transform,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.databinding.source,org.apache.cxf.attachment,javax.xml.ws,org.apache.cxf.helpers,org.apache.cxf.common.logging,javax.xml.transform.stream,javax.xml.stream,javax.mail.util,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.common.i18n,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.service,org.apache.cxf.phase,javax.imageio,org.apache.cxf.binding.soap.model,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.jaxb,javax.imageio.stream,javax.xml.bind,org.apache.cxf.common.classloader,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,org.apache.cxf.service.model,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.util,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.staxutils,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j.policyhandlers'/>
    <p n='uses' v='org.apache.ws.security.message,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,javax.security.auth.callback,org.apache.cxf.endpoint,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.xpath,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.ws.security.conversation,org.apache.ws.security.handler,org.apache.cxf,org.apache.ws.security,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.service,javax.activation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.attachment'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.common.logging,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.validation,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.stream,org.apache.ws.commons.schema,org.apache.xmlbeans.impl.values,org.apache.cxf.common.util,org.apache.cxf.staxutils,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.ws.commons.schema.resolver,org.xml.sax,org.apache.xmlbeans.impl.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='org.apache.cxf.frontend,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.stream,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.common.util,org.w3c.dom,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,javax.xml.stream,org.apache.cxf.interceptor,org.apache.cxf.common.logging,org.apache.cxf.transport,org.apache.cxf.continuations,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.wsdl,org.apache.cxf.tools.common,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.configuration.security,javax.net.ssl,javax.xml.stream,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='javax.activation,org.apache.cxf.io,org.apache.cxf.helpers,org.apache.cxf.message,javax.mail.internet,javax.mail'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.ws.policy.attachment.external,org.apache.cxf.ws.policy,org.springframework.beans,org.springframework.context,org.springframework.beans.factory,org.springframework.beans.factory.xml,org.springframework.beans.factory.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.jaxb.attachment,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transport,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.version,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.util,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.helpers,javax.xml.bind,org.junit,javax.xml.namespace,org.apache.cxf.tools.common.model,org.apache.cxf.test,org.apache.velocity.app,org.apache.velocity,org.apache.velocity.context'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.springframework.beans.factory.support,org.springframework.beans.factory.config,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.rm.policy,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.type,javax.xml.namespace,javax.xml.bind.annotation,org.apache.cxf.aegis.xml,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.bus,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.ws.commons.schema,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.helpers,javax.wsdl.extensions,javax.xml.namespace,org.apache.cxf.service.model,org.xml.sax,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.common.logging,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.v200408'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.management,org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource,javax.resource.spi,javax.xml.namespace,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.message,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.staxutils,org.apache.cxf.interceptor,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.common.util,org.apache.ws.commons.schema,org.apache.ws.commons.schema.utils,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf.transport,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.validation,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream,javax.xml.stream.events,org.apache.cxf.common.classloader,org.apache.cxf.feature,org.apache.cxf.attachment,javax.xml.xpath,org.apache.ws.commons.schema,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.frontend,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.service.invoker'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf,org.apache.cxf.service.model,javax.xml.namespace,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.annotation,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.configuration.spring,org.xml.sax,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,org.apache.ws.commons.schema.resolver,org.xml.sax,org.apache.ws.commons.schema.utils,javax.xml.transform,org.apache.cxf.common.i18n,org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.message,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.helpers,org.apache.cxf.binding,org.apache.cxf.interceptor,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.transport,javax.wsdl,org.apache.ws.commons.schema,org.apache.cxf.binding.soap.model,org.apache.cxf.common.xmlschema,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,javax.wsdl.extensions.mime,org.apache.cxf.wsdl11,org.apache.cxf.wsdl,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.headers,org.apache.cxf.databinding,javax.wsdl.factory,javax.annotation,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,org.apache.cxf.helpers,javax.xml.namespace,org.apache.cxf.common.util,org.springframework.beans.factory,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.common.i18n,javax.annotation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream,javax.xml.namespace,javax.xml.stream.events,org.apache.cxf.common.util,org.w3c.dom,javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,org.apache.cxf.common.logging,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.classloader,javax.xml.parsers,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.xml.sax,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.namespace,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,javax.wsdl,javax.wsdl.xml,javax.wsdl.factory,org.w3c.dom.ls,org.apache.cxf.common.logging,org.w3c.dom.bootstrap,javax.xml.xpath'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.jaxws,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers,org.apache.cxf.frontend,org.apache.cxf.frontend.spring,org.apache.cxf.jaxws.support'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.namespace,javax.annotation,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='org.mortbay.jetty,org.apache.cxf.endpoint,org.mortbay.jetty.handler,org.apache.cxf.transports.http,javax.servlet.http,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,javax.servlet,org.apache.cxf.io,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transport.http,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations,org.mortbay.jetty.nio,org.apache.cxf.configuration.jsse,org.mortbay.thread,org.mortbay.jetty.security,org.apache.cxf.transport.https_jetty,javax.annotation,org.mortbay.jetty.servlet,org.apache.cxf.buslifecycle,javax.imageio'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='org.apache.cxf.attachment,javax.xml.bind.attachment,javax.xml.namespace,javax.activation,org.apache.cxf.interceptor,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.service.model,javax.xml.ws.soap,javax.xml.soap,org.apache.cxf.common.logging,org.apache.cxf.jaxws.binding,org.apache.cxf.binding.soap.model,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.binding.soap,org.apache.cxf.binding,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl11,org.apache.cxf.jaxb,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.invoker,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.databinding,org.apache.cxf,org.apache.cxf.interceptor,org.apache.cxf.service,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.common.xmlschema,org.w3c.dom,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.service.invoker,org.apache.cxf.frontend,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.binding,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,javax.wsdl,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf.clustering,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.util,repackage,org.apache.cxf.tools.common,org.apache.cxf.tools.util,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.xmlbeans.impl.schema,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.jaxb,javax.xml.datatype,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,org.apache.cxf.message,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.attachment,org.apache.cxf.aegis.util,javax.activation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.namespace,org.apache.neethi,org.w3c.dom,org.apache.cxf.extension,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf,org.xml.sax,javax.xml.parsers,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf.ws.policy.builder.primitive,org.springframework.context,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.feature,org.springframework.beans'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.rm,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.neethi,javax.xml.bind,org.apache.cxf.ws.rm.soap,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,javax.servlet,org.apache.cxf.security,org.apache.cxf.transport,org.apache.cxf.io,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,org.apache.cxf.common.util,org.apache.cxf.transport.https,org.apache.cxf.ws.policy,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.service.model,org.apache.cxf.configuration,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.helpers,javax.wsdl.extensions.soap,javax.wsdl.extensions.http,org.apache.cxf.wsdl.http,javax.wsdl,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.workqueue,org.apache.cxf.version,javax.net.ssl,org.apache.cxf.transports.http,org.apache.cxf.catalog,javax.wsdl.extensions.soap12,javax.wsdl.factory,javax.xml.parsers,javax.wsdl.extensions.schema,javax.xml.stream,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.wsdl.extensions,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.namespace,org.apache.cxf.service.model,javax.wsdl,org.apache.cxf.ws.policy.attachment,org.w3c.dom,org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.util.date,org.w3c.dom,org.apache.cxf.aegis.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.endpoint,javax.xml.ws.handler.soap,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.jaxws.handler,javax.xml.ws,org.apache.cxf.helpers,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.staxutils,javax.xml.stream,javax.xml.ws.soap,javax.xml.namespace,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.context,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,org.apache.cxf.message,org.springframework.jms.core,javax.jms,org.apache.cxf.buslifecycle,org.springframework.jms.listener,org.apache.cxf.common.logging,org.springframework.jms,org.springframework.jms.support,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.apache.cxf.endpoint,org.apache.cxf.feature,org.springframework.transaction,org.springframework.jms.support.destination,org.springframework.core.task,org.springframework.jms.connection,org.springframework.beans.factory,org.springframework.jndi,org.apache.cxf.helpers,org.apache.cxf.transport.jms.continuations,org.apache.cxf.continuations,javax.naming,org.apache.cxf.io,javax.annotation,org.apache.cxf.security,org.springframework.jms.support.converter,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.common.i18n,org.xml.sax,javax.xml.parsers,org.w3c.dom,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.configuration,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.service.model,org.w3c.dom,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring,org.apache.cxf.extension,org.apache.cxf.ws.addressing,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.ws.policy.attachment,org.apache.neethi,org.springframework.core.io,org.apache.cxf,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers,org.xml.sax,org.apache.cxf.resource,javax.xml.xpath'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.jws,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.common.util,javax.wsdl,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,javax.wsdl.extensions.soap12,org.apache.cxf.common,javax.wsdl.extensions,javax.jws.soap,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.transport.jms,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,javax.xml.ws,org.apache.cxf.service.model,org.apache.cxf.phase,javax.xml.ws.handler,org.apache.cxf.jaxws.context,javax.jws,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.common.util,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.resource,org.apache.cxf.common.injection,javax.xml.ws.soap,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.soap,org.apache.cxf.binding.soap,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.annotation,javax.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.bind,org.springframework.util,org.springframework.beans.factory,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.springframework.beans,org.springframework.context,org.springframework.beans.factory.wiring,org.apache.cxf.extension,org.apache.cxf.configuration'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.apache.cxf.aegis,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf.catalog,org.apache.cxf.resource,org.apache.cxf,javax.wsdl,javax.xml.transform.dom,javax.wsdl.extensions,javax.xml.namespace,javax.wsdl.extensions.schema,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.helpers,org.apache.cxf.common,javax.wsdl.factory,javax.xml.parsers,org.apache.cxf.wsdl,com.ibm.wsdl.extensions.schema,org.apache.cxf.binding,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.service,com.ibm.wsdl.extensions.soap,javax.annotation,javax.wsdl.extensions.mime,javax.xml.bind,javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12,org.apache.cxf.transport,org.apache.cxf.service.factory'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.tokenstore'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.ws.security.message.token,javax.xml.namespace,org.apache.ws.security.components.crypto,org.w3c.dom,javax.xml.datatype,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.resource,org.springframework.context.event,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.springframework.core.io,javax.naming,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transports.http,org.apache.cxf.wsdl.http,org.apache.cxf.interceptor,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.transport.http,org.apache.cxf.ws.addressing,javax.annotation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.soap,javax.xml.ws.handler,org.apache.cxf.headers,org.apache.cxf.endpoint,javax.xml.namespace,javax.activation,org.apache.cxf.service.invoker,org.w3c.dom,org.apache.cxf.jaxws.context,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.attachment,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.helpers,javax.xml.ws,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.binding.soap.saaj,org.apache.cxf.common.logging,javax.xml.ws.http,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.jaxws.support,javax.xml.bind,org.apache.cxf.databinding,org.apache.cxf.service.factory,org.apache.cxf.configuration,org.apache.cxf.common.util,org.apache.cxf,javax.xml.ws.wsaddressing,org.apache.cxf.service,org.apache.cxf.jaxws.binding.soap,javax.jws,org.apache.cxf.frontend,org.apache.cxf.jaxws.interceptors,org.apache.cxf.jaxws.handler,org.apache.cxf.resource,org.apache.cxf.common.injection,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.feature,javax.wsdl.extensions.soap12,javax.xml.ws.spi,org.apache.cxf.jaxb,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.wsdl.http,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.transport,javax.wsdl.extensions,org.apache.cxf.wsdl11,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema,org.apache.cxf.helpers,org.apache.xml.resolver.helpers,org.apache.cxf.common.logging,javax.annotation,org.apache.xml.resolver,org.apache.xml.resolver.tools'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.w3c.dom,javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.builders,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.message,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.attachment,org.apache.cxf.binding,org.apache.cxf.configuration.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.xml,org.apache.cxf.staxutils,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.type.basic,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,javax.xml.parsers,org.apache.cxf.aegis.type.java5,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.aegis.xml,org.apache.cxf.common.i18n,org.apache.cxf.aegis.xml.stax'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.apache.cxf.configuration.security,org.mortbay.jetty.security,javax.net.ssl,org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.mortbay.jetty'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.apache.cxf.binding.soap,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.beans'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.transport,org.apache.cxf.interceptor,javax.activation,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.helpers,org.apache.cxf.service,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.cxf.transport,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.policy,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.common.i18n,javax.xml.parsers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.objectweb.asm,org.apache.cxf.common.i18n,org.apache.cxf.common.logging,net.sf.cglib.proxy,org.apache.cxf.helpers,org.springframework.aop.framework,org.springframework.aop.support,org.springframework.aop,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.headers,org.apache.cxf.common.util,org.apache.cxf.databinding,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.helpers,org.w3c.dom,org.apache.cxf,javax.xml.parsers,javax.xml.xpath,org.apache.cxf.binding,org.apache.cxf.io,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.w3c.dom,javax.xml.namespace,org.apache.cxf.tools.common.dom,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='org.jdom,org.apache.cxf.staxutils,javax.xml.stream,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.util,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.message,org.apache.cxf.interceptor,org.apache.cxf.endpoint,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.workqueue,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.ws.addressing.policy,org.apache.cxf.phase,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.ws.policy,javax.xml.ws,org.apache.cxf.helpers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.v200408,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,javax.xml.ws.wsaddressing,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.ws.addressing.soap,org.apache.cxf.feature'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf,org.apache.cxf.configuration,org.apache.cxf.workqueue,org.apache.cxf.common.xmlschema'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.transform.dom,org.w3c.dom.ls,org.xml.sax,org.apache.cxf.resource,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream.util,javax.xml.bind.annotation,org.apache.cxf.common.classloader,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl.http,javax.wsdl.factory'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.jdom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean,org.apache.cxf.helpers,javax.management.remote'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,org.apache.cxf.interceptor,org.w3c.dom,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.core.io,org.springframework.beans.factory.xml,org.junit,org.apache.cxf,org.springframework.context,org.springframework.context.support,javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.helpers,org.xml.sax,org.springframework.beans,org.apache.cxf.bus.spring,org.apache.cxf.message,org.apache.cxf.transport,javax.wsdl.xml,org.apache.cxf.service.model,javax.wsdl.factory,org.apache.cxf.service,org.apache.cxf.wsdl11,javax.xml.stream,junit.framework,javax.xml.xpath,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.apache.cxf.ws.security.policy.model,org.apache.cxf.security.transport,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.net.ssl,org.apache.cxf.helpers,org.apache.ws.security.handler,org.apache.cxf.ws.security.wss4j,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.ws.security.trust,org.apache.cxf.ws.addressing,org.apache.cxf.ws.security.tokenstore,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.service.invoker,javax.xml.transform.dom,org.apache.ws.security.message.token,org.apache.xml.security.utils,org.apache.ws.security.util,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.binding.soap,org.apache.cxf.common.logging,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.ws.security,org.apache.cxf.service,org.apache.cxf.ws.addressing.policy,org.apache.cxf.ws.policy.builder.primitive,javax.xml.stream,org.apache.ws.security.conversation,org.apache.ws.security.conversation.dkalgo'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.parsers,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.jdom,org.xml.sax,javax.xml.transform,javax.xml.transform.dom,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.common,org.apache.cxf.io,org.apache.cxf,javax.xml.ws.spi,javax.xml.ws.wsaddressing,javax.xml.bind,javax.xml.ws,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema.extensions,javax.xml.namespace,org.apache.ws.commons.schema,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis,org.apache.cxf.aegis.type.collection,org.apache.cxf.common.logging,javax.activation,org.w3c.dom,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema,org.apache.cxf.common.xmlschema,org.xml.sax,javax.xml.xpath,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers,org.apache.cxf.service.model,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.apache.cxf.continuations,org.mortbay.jetty,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.common.logging,org.w3c.dom,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas.configuration'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas.wsdl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.2.1))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common ;version=2.2.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.2.1))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.dom ;version=2.2.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.2.1))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.2.1))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.model ;version=2.2.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.2.1))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.2.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.2.1))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.2.1))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.util ;version=2.2.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.2.1))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.validator ;version=2.2.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.2.1))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.2.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.interceptors
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.tokenstore)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.tokenstore ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.trust)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.trust ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j.policyhandlers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j.policyhandlers
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.conversation ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation.dkalgo)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.conversation.dkalgo ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content.keyvalues)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content.keyvalues
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
  <require extend='false' filter='(&amp;(package=schemas)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas
  </require>
  <require extend='false' filter='(&amp;(package=schemas.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas.configuration
  </require>
  <require extend='false' filter='(&amp;(package=schemas.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas.wsdl
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle-minimal/2.1.2' presentationname='Apache CXF Minimal Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle-minimal' uri='../org/apache/cxf/cxf-bundle-minimal/2.1.2/cxf-bundle-minimal-2.1.2.jar' version='2.1.2'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2685694
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Minimal Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle-minimal'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.xfire.aegis.type.java5'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.headers,javax.xml.ws.handler,javax.xml.namespace,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.frontend,org.apache.cxf.binding.xml,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.jaxws.binding.http,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,com.sun.xml.bind.api,org.w3c.dom,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.xml.stream,javax.security.auth.callback,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.attachment,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.commons.logging,org.apache.cxf.aegis,org.jdom,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.xmlbeans.impl.values,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.xmlbeans.impl.schema,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.extension,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.context,org.apache.cxf.ws.policy.attachment.external,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.xml.bind.api,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.codehaus.xfire.aegis.type.java5,org.jdom,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf,org.apache.cxf.transports.http.configuration'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='org.apache.cxf.attachment,javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.jaxws.support,org.apache.cxf.binding.soap,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans.impl.util,org.apache.xmlbeans,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,repackage,org.apache.cxf.tools.common,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.activation,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.jaxen,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.jaxen,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.jaxen.jdom'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxws.support,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.handler,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.message,javax.naming,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,org.apache.cxf.wsdl,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.jaxws.context,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,javax.xml.bind,org.springframework.util,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.xml.resolver,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.xml.sax,javax.wsdl.xml,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.ws.commons.schema.resolver,org.apache.xml.resolver.helpers,javax.annotation,org.apache.xml.resolver,org.apache.cxf.resource,org.apache.cxf,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.frontend,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.jaxb,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.activation,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.ws.commons.schema.utils,org.apache.cxf.staxutils,org.jdom.output,org.jaxen.jdom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.message,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,javax.xml.validation,org.apache.cxf.aegis.type,org.apache.cxf.aegis.type.java5,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.ws.policy,javax.xml.ws.wsaddressing,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.bus,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.cxf.common.logging,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,javanet.staxutils,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,javax.xml.transform.stream,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.io,javax.xml.ws.spi,org.apache.cxf,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javanet.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javanet.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type.java5)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type.java5
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle-minimal/2.1.6' presentationname='Apache CXF Minimal Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle-minimal' uri='../org/apache/cxf/cxf-bundle-minimal/2.1.6/cxf-bundle-minimal-2.1.6.jar' version='2.1.6'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2883792
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Minimal Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle-minimal'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.xfire.aegis.type.java5'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.binding.xml,org.apache.cxf.feature,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.ws.soap,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.jaxws.binding.http,org.apache.cxf.databinding.source,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,com.sun.xml.bind.marshaller,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.objectweb.asm,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management,org.apache.cxf.management.annotation,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.security.auth.callback,javax.xml.stream,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.ws.security.processor,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,javax.xml.parsers,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,javax.mail.util,org.apache.cxf.endpoint,javax.imageio,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.imageio.stream,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.xml.namespace,javax.activation,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.attachment,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.xmlbeans.impl.values,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.xmlbeans.impl.schema,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.jaxb.attachment,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.codehaus.xfire.aegis.type.java5,org.jdom,javax.xml.bind.annotation,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.ws.commons.schema.utils,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas.configuration'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.bus.spring,org.apache.cxf.configuration.jsse.spring,org.apache.cxf.common.util,org.apache.cxf.transports.http_jetty.configuration,org.springframework.beans.factory,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.io,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.xml.namespace,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.util,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.w3c.dom,org.apache.cxf.tools.util,org.apache.xmlbeans.impl.schema,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,repackage,org.apache.cxf.tools.common,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.xb.substwsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,javax.xml.bind.annotation.adapters,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.clustering,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.activation,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.jaxen,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.version,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.jaxen,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.jaxen.jdom'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms,org.springframework.jms.support,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.springframework.beans.factory,org.springframework.jms.connection,org.apache.cxf.wsdl,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.cxf.transport.jms.continuations,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,org.apache.cxf.security,org.apache.cxf.continuations,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.transport.jms,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.jaxws.context,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.common,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas.wsdl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.workqueue,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.wsdl.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.apache.cxf.staxutils,org.jaxen.jdom,org.jdom.output,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.configuration.security,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop,net.sf.cglib.proxy,org.springframework.aop.framework,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.ws.policy,javax.xml.ws.wsaddressing,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.xml.sax,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.common,org.apache.cxf.io,javax.xml.ws.spi,org.apache.cxf,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.1.6))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.1.6))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.dom ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.1.6))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.1.6))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.model ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.1.6))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.1.6))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.1.6))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.util ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.1.6))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.validator ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.1.6))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type.java5)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type.java5
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
  <require extend='false' filter='(&amp;(package=schemas)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas
  </require>
  <require extend='false' filter='(&amp;(package=schemas.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas.configuration
  </require>
  <require extend='false' filter='(&amp;(package=schemas.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas.wsdl
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle-minimal/2.0.11' presentationname='Apache CXF Minimal Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle-minimal' uri='../org/apache/cxf/cxf-bundle-minimal/2.0.11/cxf-bundle-minimal-2.0.11.jar' version='2.0.11'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2514590
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Minimal Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle-minimal'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.headers,javax.xml.ws.handler,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.service,javax.wsdl,javax.activation,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,org.apache.cxf.databinding.source,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.security.auth.callback,javax.xml.stream,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.ws.security.processor,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,org.apache.cxf.jaxws.support,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.xml.transform.sax,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,org.xmlsoap.schemas.wsdl.http,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.validation,javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.tools.ant.types,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.tools.ant,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.xml.sax,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.transports.http_jetty.configuration,org.apache.cxf.configuration.spring,javax.xml.bind,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.xml.ws,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap,javax.jws.soap,javax.jws'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='javax.xml.namespace,javax.activation,org.apache.cxf.aegis,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.version,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxws.support,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.handler,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms,org.springframework.jms.support,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.ws.addressing,org.springframework.beans.factory,org.springframework.jms.connection,org.apache.cxf.wsdl,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.cxf.transport.jms.continuations,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,org.apache.cxf.security,org.apache.cxf.continuations,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.transport.jms,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.jaxws.binding.soap,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.common.util.factory,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.databinding.source,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.jdom.output,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.configuration.security,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlsoap.schemas.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.aop,org.springframework.aop.framework,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.wsdl.extensions,javax.jws,org.apache.cxf,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util.factory'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf,org.apache.cxf.common.i18n,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.0.11'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util.factory)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util.factory ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=2.0.11))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http ;version=2.0.11
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.bundle-minimal/2.2.2' presentationname='Apache CXF Minimal Bundle Jar' symbolicname='org.apache.cxf.bundle-minimal' uri='../org/apache/cxf/cxf-bundle-minimal/2.2.2/cxf-bundle-minimal-2.2.2.jar' version='2.2.2'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2977065
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Minimal Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.bundle-minimal'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='javax.net.ssl,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.helpers,org.apache.neethi,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.namespace,org.apache.cxf.transport,org.springframework.beans,org.springframework.context'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.namespace,org.apache.cxf.binding.xml.interceptor,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.trust'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.xml.security.keys.content.keyvalues,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,org.apache.cxf.service,javax.security.auth.callback,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,org.apache.cxf.configuration,org.apache.cxf.common.classloader,org.apache.ws.security.conversation,org.apache.ws.security.conversation.dkalgo,org.apache.cxf,org.apache.ws.security.processor,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.wsdl11,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.springframework.core.io.support,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.context,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.core.io,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.resource,org.springframework.beans,org.springframework.beans.factory,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.springframework.context.event,org.apache.cxf,org.springframework.beans.factory.config,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.core,org.apache.cxf.extension,org.apache.cxf.configuration,org.apache.cxf.helpers,javax.xml.parsers,javax.xml.stream,javax.annotation,org.apache.cxf.common.injection,org.apache.cxf.feature,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.endpoint,org.apache.cxf.jaxws,org.apache.cxf,javax.xml.ws,org.apache.cxf.service.model,org.apache.cxf.service,javax.xml.namespace,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.wsdl,javax.wsdl,javax.xml.ws.soap,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.binding,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.util,javax.jws,org.apache.cxf.jaxb,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.frontend,org.apache.cxf.databinding,org.apache.cxf.databinding.source,javax.xml.bind.annotation,org.apache.cxf.wsdl11,org.apache.cxf.helpers,javax.xml.soap,javax.activation,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.helpers,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.net.ssl,javax.security.auth.x500,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.configuration.security,org.apache.cxf.transport.http,javax.servlet.http,org.apache.cxf.security.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.datatype,javax.xml.bind.annotation.adapters,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.service,javax.xml.bind.attachment,javax.xml.validation,org.apache.cxf.jaxb.attachment,javax.xml.bind,javax.xml.transform.dom,javax.xml.transform,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.factory,org.apache.cxf.common.xmlschema,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,javax.xml.stream,org.apache.cxf.interceptor,javax.xml.transform.stream,org.apache.cxf.staxutils,org.apache.cxf.helpers,org.apache.ws.commons.schema.utils,org.apache.commons.lang.builder,org.apache.commons.lang,org.xml.sax,org.objectweb.asm,com.sun.xml.bind.marshaller'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.configuration.security,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.message,org.apache.cxf.jaxws.handler,org.apache.cxf.jaxws.handler.soap,javax.xml.ws,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding,org.apache.cxf.staxutils,javax.xml.stream,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.namespace,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.saaj,org.apache.cxf.transport,org.apache.cxf.jaxws.context,org.apache.cxf.common.logging,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap,org.apache.cxf.io,javax.xml.bind,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management,org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='javax.xml.namespace,org.apache.ws.security.components.crypto,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.ws.security.handler,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security,org.apache.cxf.endpoint,org.apache.cxf.ws.security.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.common.classloader,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,javax.xml.stream,org.apache.cxf.helpers,org.apache.ws.security.message,org.apache.cxf.ws.security.wss4j.policyhandlers,org.apache.cxf.binding.soap.saaj,org.apache.cxf.security,javax.security.auth.callback,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.ws.security.util,org.apache.ws.security.message.token,javax.xml.transform.dom,org.apache.ws.security.processor,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.rm.persistence,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.common.util,javax.annotation,javax.xml.parsers,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.w3c.dom,org.apache.cxf.transport.jms,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.databinding,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.extension,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management,org.apache.cxf.buslifecycle'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.addressing.v200408,javax.xml.bind.annotation,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.addressing,org.apache.cxf.helpers,org.apache.cxf.ws.rm.manager,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.policy,javax.xml.datatype,javax.xml.bind,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.service.invoker,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.binding.soap.model,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.ws.rm.soap,javax.annotation,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.ws,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf.attachment,javax.activation,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,javax.xml.transform.sax,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.saaj,javax.imageio,org.apache.cxf.binding.soap.model,org.apache.cxf.common.i18n,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,javax.mail.util,javax.imageio.stream,javax.xml.bind,org.apache.cxf.common.classloader,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,org.apache.cxf.service.model,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.util,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.staxutils,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j.policyhandlers'/>
    <p n='uses' v='org.apache.ws.security.message,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,javax.security.auth.callback,org.apache.cxf.endpoint,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.xpath,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.ws.security.conversation,org.apache.ws.security.handler,org.apache.cxf,org.apache.ws.security,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.service,javax.activation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.attachment'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.common.logging,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.validation,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.stream,org.apache.ws.commons.schema,org.apache.xmlbeans.impl.values,org.apache.cxf.common.util,org.apache.cxf.staxutils,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.ws.commons.schema.resolver,org.xml.sax,org.apache.xmlbeans.impl.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='org.apache.cxf.frontend,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.stream,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.common.util,org.w3c.dom,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,javax.xml.stream,org.apache.cxf.interceptor,org.apache.cxf.common.logging,org.apache.cxf.transport,org.apache.cxf.continuations,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.wsdl,org.apache.cxf.tools.common,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.configuration.security,javax.net.ssl,javax.xml.stream,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='javax.activation,org.apache.cxf.io,org.apache.cxf.helpers,org.apache.cxf.message,javax.mail.internet,javax.mail'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.ws.policy.attachment.external,org.apache.cxf.ws.policy,org.springframework.beans,org.springframework.context,org.springframework.beans.factory,org.springframework.beans.factory.xml,org.springframework.beans.factory.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.jaxb.attachment,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transport,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.version,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.util,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.helpers,javax.xml.bind,org.junit,javax.xml.namespace,org.apache.cxf.tools.common.model,org.apache.cxf.test,org.apache.velocity.app,org.apache.velocity,org.apache.velocity.context'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.springframework.beans.factory.support,org.springframework.beans.factory.config,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.rm.policy,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.type,javax.xml.namespace,javax.xml.bind.annotation,org.apache.cxf.aegis.xml,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.bus,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.ws.commons.schema,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.helpers,javax.wsdl.extensions,javax.xml.namespace,org.apache.cxf.service.model,org.xml.sax,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.common.logging,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.v200408'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.management,org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource,javax.resource.spi,javax.xml.namespace,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.message,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.staxutils,org.apache.cxf.interceptor,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.common.util,org.apache.ws.commons.schema,org.apache.ws.commons.schema.utils,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf.transport,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.databinding,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.validation,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream,javax.xml.stream.events,org.apache.cxf.common.classloader,org.apache.cxf.feature,org.apache.cxf.attachment,javax.xml.xpath,org.apache.ws.commons.schema,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.frontend,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.service.invoker'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf,org.apache.cxf.service.model,javax.xml.namespace,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.annotation,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.configuration.spring,org.xml.sax,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,org.apache.ws.commons.schema.resolver,org.xml.sax,org.apache.ws.commons.schema.utils,javax.xml.transform,org.apache.cxf.common.i18n,org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.message,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.helpers,org.apache.cxf.binding,org.apache.cxf.interceptor,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.transport,javax.wsdl,org.apache.ws.commons.schema,org.apache.cxf.binding.soap.model,org.apache.cxf.common.xmlschema,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,javax.wsdl.extensions.mime,org.apache.cxf.wsdl,org.apache.cxf.wsdl11,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.headers,org.apache.cxf.databinding,javax.wsdl.factory,javax.annotation,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,org.apache.cxf.helpers,javax.xml.namespace,org.apache.cxf.common.util,org.springframework.beans.factory,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.common.i18n,javax.annotation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream,javax.xml.namespace,javax.xml.stream.events,org.apache.cxf.common.util,org.w3c.dom,javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,org.apache.cxf.common.logging,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.classloader,javax.xml.parsers,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.xml.sax,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.namespace,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,javax.wsdl,javax.wsdl.xml,javax.wsdl.factory,org.w3c.dom.ls,org.apache.cxf.common.logging,org.w3c.dom.bootstrap,javax.xml.xpath'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.jaxws,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers,org.apache.cxf.frontend,org.apache.cxf.frontend.spring,org.apache.cxf.jaxws.support'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.namespace,javax.annotation,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='org.mortbay.jetty,org.apache.cxf.endpoint,org.mortbay.jetty.handler,org.apache.cxf.transports.http,javax.servlet.http,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,javax.servlet,org.apache.cxf.io,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transport.http,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations,org.mortbay.jetty.nio,org.apache.cxf.configuration.jsse,org.mortbay.thread,org.mortbay.jetty.security,org.apache.cxf.transport.https_jetty,javax.annotation,org.mortbay.jetty.servlet,org.apache.cxf.buslifecycle,javax.imageio'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='org.apache.cxf.attachment,javax.xml.bind.attachment,javax.xml.namespace,javax.activation,org.apache.cxf.interceptor,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.service.model,javax.xml.ws.soap,javax.xml.soap,org.apache.cxf.common.logging,org.apache.cxf.jaxws.binding,org.apache.cxf.binding.soap.model,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.binding.soap,org.apache.cxf.binding,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl11,org.apache.cxf.jaxb,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.invoker,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.databinding,org.apache.cxf,org.apache.cxf.interceptor,org.apache.cxf.service,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.common.xmlschema,org.w3c.dom,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.service.invoker,org.apache.cxf.frontend,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.binding,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,javax.wsdl,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf.clustering,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.util,repackage,org.apache.cxf.tools.common,org.apache.cxf.tools.util,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.xmlbeans.impl.schema,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.jaxb,javax.xml.datatype,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,org.apache.cxf.message,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.attachment,org.apache.cxf.aegis.util,javax.activation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.namespace,org.apache.neethi,org.w3c.dom,org.apache.cxf.extension,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf,org.xml.sax,javax.xml.parsers,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf.ws.policy.builder.primitive,org.springframework.context,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.feature,org.springframework.beans'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.rm,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.neethi,javax.xml.bind,org.apache.cxf.ws.rm.soap,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,javax.servlet,org.apache.cxf.security,org.apache.cxf.transport,org.apache.cxf.io,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,org.apache.cxf.common.util,org.apache.cxf.transport.https,org.apache.cxf.ws.policy,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.service.model,org.apache.cxf.configuration,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.helpers,javax.wsdl.extensions.soap,javax.wsdl.extensions.http,org.apache.cxf.wsdl.http,javax.wsdl,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.workqueue,org.apache.cxf.version,javax.net.ssl,org.apache.cxf.transports.http,org.apache.cxf.catalog,javax.wsdl.extensions.soap12,javax.wsdl.factory,javax.xml.parsers,javax.wsdl.extensions.schema,javax.xml.stream,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.wsdl.extensions,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.namespace,org.apache.cxf.service.model,javax.wsdl,org.apache.cxf.ws.policy.attachment,org.w3c.dom,org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.util.date,org.w3c.dom,org.apache.cxf.aegis.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.jaxws.handler,javax.xml.ws,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.interceptor,javax.xml.ws.soap,javax.xml.namespace,org.apache.cxf.binding.soap.saaj,org.apache.cxf.endpoint,org.apache.cxf.transport,org.apache.cxf.binding,org.apache.cxf.jaxws.context,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,org.apache.cxf.message,org.springframework.jms.core,javax.jms,org.apache.cxf.buslifecycle,org.springframework.jms.listener,org.apache.cxf.common.logging,org.springframework.jms,org.springframework.jms.support,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf,org.apache.cxf.ws.addressing,org.springframework.beans.factory.annotation,org.apache.cxf.endpoint,org.apache.cxf.feature,org.springframework.transaction,org.springframework.jms.support.destination,org.springframework.core.task,org.springframework.jms.connection,org.springframework.beans.factory,org.springframework.jndi,org.apache.cxf.helpers,org.apache.cxf.transport.jms.continuations,org.apache.cxf.continuations,javax.naming,org.apache.cxf.io,javax.annotation,org.apache.cxf.security,org.springframework.jms.support.converter,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.common.i18n,org.xml.sax,javax.xml.parsers,org.w3c.dom,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.configuration,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.service.model,org.w3c.dom,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring,org.apache.cxf.extension,org.apache.cxf.ws.addressing,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.ws.policy.attachment,org.apache.neethi,org.springframework.core.io,org.apache.cxf,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers,org.xml.sax,org.apache.cxf.resource,javax.xml.xpath'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.jws,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.common.util,javax.wsdl,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,javax.wsdl.extensions.soap12,org.apache.cxf.common,javax.wsdl.extensions,javax.jws.soap,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.cxf.message,org.apache.cxf.transport.jms,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,javax.xml.ws,org.apache.cxf.service.model,org.apache.cxf.phase,javax.xml.ws.handler,org.apache.cxf.jaxws.context,javax.jws,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.common.util,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.resource,org.apache.cxf.common.injection,javax.xml.ws.soap,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.soap,org.apache.cxf.binding.soap,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.annotation,javax.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.bind,org.springframework.util,org.springframework.beans.factory,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.springframework.beans,org.springframework.context,org.springframework.beans.factory.wiring,org.apache.cxf.extension,org.apache.cxf.configuration'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.apache.cxf.aegis,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf.catalog,org.apache.cxf.resource,org.apache.cxf,javax.wsdl,javax.xml.transform.dom,javax.wsdl.extensions,javax.xml.namespace,javax.wsdl.extensions.schema,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.helpers,org.apache.cxf.common,javax.wsdl.factory,javax.xml.parsers,org.apache.cxf.wsdl,com.ibm.wsdl.extensions.schema,org.apache.cxf.binding,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.service,com.ibm.wsdl.extensions.soap,javax.annotation,javax.wsdl.extensions.mime,javax.xml.bind,javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12,org.apache.cxf.transport,org.apache.cxf.service.factory'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.tokenstore'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.ws.security.message.token,javax.xml.namespace,org.apache.ws.security.components.crypto,org.w3c.dom,javax.xml.datatype,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.resource,org.springframework.context.event,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.springframework.core.io,javax.naming,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transports.http,org.apache.cxf.wsdl.http,org.apache.cxf.interceptor,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.transport.http,org.apache.cxf.ws.addressing,javax.annotation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.soap,javax.xml.ws.handler,org.apache.cxf.headers,org.apache.cxf.endpoint,javax.xml.namespace,javax.activation,org.apache.cxf.service.invoker,org.w3c.dom,org.apache.cxf.jaxws.context,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.attachment,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.helpers,org.apache.cxf.common.logging,javax.xml.ws.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.jaxws.support,org.apache.cxf.binding.soap.saaj,javax.xml.bind,javax.xml.ws,org.apache.cxf.databinding,org.apache.cxf.service.factory,org.apache.cxf.configuration,org.apache.cxf.common.util,org.apache.cxf,javax.xml.ws.wsaddressing,org.apache.cxf.service,org.apache.cxf.jaxws.binding.soap,javax.jws,org.apache.cxf.frontend,org.apache.cxf.jaxws.handler,org.apache.cxf.resource,org.apache.cxf.common.injection,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.feature,javax.wsdl.extensions.soap12,javax.xml.ws.spi,org.apache.cxf.jaxb,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.wsdl.http,org.apache.cxf.databinding.source,org.apache.cxf.transport,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.wsdl11,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema,org.apache.cxf.helpers,org.apache.xml.resolver.helpers,org.apache.cxf.common.logging,javax.annotation,org.apache.xml.resolver,org.apache.xml.resolver.tools'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.w3c.dom,javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.builders,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.message,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.attachment,org.apache.cxf.binding,org.apache.cxf.configuration.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.xml,org.apache.cxf.staxutils,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.type.basic,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,javax.xml.parsers,org.apache.cxf.aegis.type.java5,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.aegis.xml,org.apache.cxf.common.i18n,org.apache.cxf.aegis.xml.stax'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.apache.cxf.configuration.security,org.mortbay.jetty.security,javax.net.ssl,org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.mortbay.jetty'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.apache.cxf.binding.soap,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.beans'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.transport,org.apache.cxf.interceptor,javax.activation,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.helpers,org.apache.cxf.service,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.cxf.transport,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.policy,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.common.i18n,javax.xml.parsers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.objectweb.asm,org.apache.cxf.common.i18n,org.apache.cxf.common.logging,net.sf.cglib.proxy,org.apache.cxf.helpers,org.springframework.aop.framework,org.springframework.aop.support,org.springframework.aop,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.headers,org.apache.cxf.common.util,org.apache.cxf.databinding,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.helpers,org.w3c.dom,org.apache.cxf,javax.xml.parsers,javax.xml.xpath,org.apache.cxf.binding,org.apache.cxf.io,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.w3c.dom,javax.xml.namespace,org.apache.cxf.tools.common.dom,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='org.jdom,org.apache.cxf.staxutils,javax.xml.stream,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.util,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.message,org.apache.cxf.interceptor,org.apache.cxf.endpoint,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.workqueue,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.ws.addressing.policy,org.apache.cxf.phase,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.ws.policy,javax.xml.ws,org.apache.cxf.helpers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.v200408,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,javax.xml.ws.wsaddressing,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.ws.addressing.soap,org.apache.cxf.feature'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf,org.apache.cxf.configuration,org.apache.cxf.workqueue,org.apache.cxf.common.xmlschema'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.transform.dom,org.w3c.dom.ls,org.xml.sax,org.apache.cxf.resource,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream.util,javax.xml.bind.annotation,org.apache.cxf.common.classloader,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl.http,javax.wsdl.factory'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.jdom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean,org.apache.cxf.helpers,javax.management.remote'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,org.apache.cxf.interceptor,org.w3c.dom,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.core.io,org.springframework.beans.factory.xml,org.junit,org.apache.cxf,org.springframework.context,org.springframework.context.support,javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.helpers,org.xml.sax,org.springframework.beans,org.apache.cxf.bus.spring,org.apache.cxf.message,org.apache.cxf.transport,javax.wsdl.xml,org.apache.cxf.service.model,javax.wsdl.factory,org.apache.cxf.service,org.apache.cxf.wsdl11,javax.xml.stream,junit.framework,javax.xml.xpath,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.apache.cxf.ws.security.policy.model,org.apache.cxf.security.transport,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.net.ssl,org.apache.cxf.helpers,org.apache.ws.security.handler,org.apache.cxf.ws.security.wss4j,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.ws.security.trust,org.apache.cxf.ws.addressing,org.apache.cxf.ws.security.tokenstore,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.service.invoker,javax.xml.transform.dom,org.apache.ws.security.message.token,org.apache.xml.security.utils,org.apache.ws.security.util,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.binding.soap,org.apache.cxf.common.logging,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.ws.security,org.apache.cxf.service,org.apache.cxf.ws.addressing.policy,org.apache.cxf.ws.policy.builder.primitive,javax.xml.stream,org.apache.ws.security.conversation,org.apache.ws.security.conversation.dkalgo'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.parsers,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.jdom,org.xml.sax,javax.xml.transform,javax.xml.transform.dom,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.common,org.apache.cxf.io,org.apache.cxf,javax.xml.ws.spi,javax.xml.ws.wsaddressing,javax.xml.bind,javax.xml.ws,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema.extensions,javax.xml.namespace,org.apache.ws.commons.schema,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis,org.apache.cxf.aegis.type.collection,org.apache.cxf.common.logging,javax.activation,org.w3c.dom,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema,org.apache.cxf.common.xmlschema,org.xml.sax,javax.xml.xpath,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers,org.apache.cxf.service.model,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.apache.cxf.continuations,org.mortbay.jetty,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.common.logging,org.w3c.dom,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas.configuration'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas.wsdl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.2.2))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common ;version=2.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.2.2))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.dom ;version=2.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.2.2))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.2.2))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.model ;version=2.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.2.2))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.2.2))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.2.2))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.util ;version=2.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.2.2))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.validator ;version=2.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.2.2))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.interceptors
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.tokenstore)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.tokenstore ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.trust)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.trust ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j.policyhandlers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j.policyhandlers
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.conversation ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation.dkalgo)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.conversation.dkalgo ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content.keyvalues)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content.keyvalues
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
  <require extend='false' filter='(&amp;(package=schemas)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas
  </require>
  <require extend='false' filter='(&amp;(package=schemas.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas.configuration
  </require>
  <require extend='false' filter='(&amp;(package=schemas.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas.wsdl
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle-minimal/2.2.0' presentationname='Apache CXF Minimal Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle-minimal' uri='../org/apache/cxf/cxf-bundle-minimal/2.2/cxf-bundle-minimal-2.2.jar' version='2.2.0'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2959855
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Minimal Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle-minimal'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.common.util,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.trust'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.xml.security.keys.content.keyvalues,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,org.apache.cxf.service,javax.security.auth.callback,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.databinding.source,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.ws.security.message.token,org.apache.cxf.configuration,org.apache.cxf.common.classloader,org.apache.ws.security.conversation,org.apache.cxf,org.apache.ws.security.conversation.dkalgo,org.apache.ws.security.processor,org.apache.cxf.staxutils,org.apache.cxf.wsdl11,org.apache.ws.security,org.apache.cxf.helpers,org.apache.cxf.ws.security.tokenstore'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.binding.xml,org.apache.cxf.feature,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.ws.soap,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.objectweb.asm,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.ws.security.message,org.apache.cxf.common.logging,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,javax.security.auth.callback,javax.xml.stream,org.apache.cxf.endpoint,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.ws.security.wss4j.policyhandlers,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf,org.apache.ws.security.processor,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.annotation,javax.xml.parsers,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,javax.xml.parsers,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,javax.mail.util,org.apache.cxf.endpoint,javax.imageio,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.objectweb.asm,javax.xml.transform.dom,javax.imageio.stream,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j.policyhandlers'/>
    <p n='uses' v='org.apache.ws.security.message,org.apache.cxf.common.logging,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,javax.security.auth.callback,org.apache.cxf.endpoint,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.ws.security.conversation,org.apache.ws.security.handler,org.apache.cxf,org.apache.ws.security,org.apache.cxf.helpers,org.apache.cxf.ws.security.tokenstore'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.attachment,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.commons.logging,org.apache.cxf.aegis,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.common.util,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.xmlbeans.impl.values,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.xmlbeans.impl.schema,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.jaxb.attachment,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.xml.namespace,javax.xml.bind.annotation,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.common.xmlschema,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.ws.commons.schema.utils,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.xml.sax,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas.configuration'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.bus.spring,org.apache.cxf.configuration.jsse.spring,org.apache.cxf.common.util,org.apache.cxf.transports.http_jetty.configuration,org.springframework.beans.factory,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.xml.namespace,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.util,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,repackage,org.apache.cxf.tools.common,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.frontend,org.apache.cxf.common.i18n,javax.xml.bind.annotation.adapters,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.clustering,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.version,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.apache.ws.commons.schema,org.w3c.dom,org.apache.commons.logging,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms,org.springframework.jms.support,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.ws.addressing,org.springframework.jms.connection,org.springframework.beans.factory,org.apache.cxf.wsdl,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.cxf.transport.jms.continuations,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,org.apache.cxf.security,org.apache.cxf.continuations,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.stream,javax.wsdl,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.jaxws.context,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema,org.apache.cxf.aegis.type,javax.xml.namespace,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.common,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.tokenstore'/>
    <p n='uses' v='javax.xml.namespace,org.apache.ws.security.components.crypto,org.w3c.dom,javax.xml.datatype,org.apache.ws.security.message.token,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas.wsdl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.wsdl.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='org.apache.cxf.ws.security.policy.builders,javax.annotation,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.configuration.security,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.java5,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop,net.sf.cglib.proxy,org.springframework.aop.framework,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.ws.policy,javax.xml.ws.wsaddressing,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.xml.sax,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.security.transport,org.apache.cxf.ws.security.trust,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.security,org.apache.cxf.ws.policy,org.apache.xml.security.utils,org.apache.cxf.ws.addressing,org.apache.ws.security.util,org.apache.cxf.service,org.apache.cxf.ws.security.wss4j,javax.xml.stream,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.ws.security.conversation,org.apache.ws.security.handler,org.apache.ws.security.conversation.dkalgo,org.apache.cxf,org.apache.cxf.staxutils,org.apache.ws.security,javax.net.ssl,org.apache.cxf.helpers,org.apache.cxf.ws.security.tokenstore'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.common,org.apache.cxf.io,javax.xml.ws.spi,org.apache.cxf,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,org.apache.ws.commons.schema,javax.activation,org.w3c.dom,org.apache.commons.logging,javax.xml.xpath,org.apache.cxf.aegis.type.xml,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.dom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.validator ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.interceptors
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.tokenstore)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.tokenstore ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.trust)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.trust ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j.policyhandlers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j.policyhandlers
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.conversation ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation.dkalgo)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.conversation.dkalgo ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content.keyvalues)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content.keyvalues
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
  <require extend='false' filter='(&amp;(package=schemas)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas
  </require>
  <require extend='false' filter='(&amp;(package=schemas.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas.configuration
  </require>
  <require extend='false' filter='(&amp;(package=schemas.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas.wsdl
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle-minimal/2.1.3' presentationname='Apache CXF Minimal Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle-minimal' uri='../org/apache/cxf/cxf-bundle-minimal/2.1.3/cxf-bundle-minimal-2.1.3.jar' version='2.1.3'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2726246
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Minimal Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle-minimal'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.xfire.aegis.type.java5'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.binding.xml,org.apache.cxf.feature,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.ws.soap,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,com.sun.xml.bind.api,org.w3c.dom,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.xml.stream,javax.security.auth.callback,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.attachment,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.commons.logging,org.apache.cxf.aegis,org.jdom,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.xmlbeans.impl.values,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.xmlbeans.impl.schema,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.extension,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.jaxb.attachment,javax.xml.namespace,com.sun.xml.bind.api,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.codehaus.xfire.aegis.type.java5,org.jdom,javax.xml.bind.annotation,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf,org.apache.cxf.transports.http.configuration'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.xml.namespace,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.jaxws.support,org.apache.cxf.binding.soap,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans.impl.util,org.apache.xmlbeans,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,repackage,org.apache.cxf.tools.common,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,javax.xml.bind.annotation.adapters,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.activation,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.jaxen,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.jaxen,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.jaxen.jdom'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms.support,org.springframework.jms,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.ws.addressing,org.springframework.jms.connection,org.springframework.beans.factory,org.apache.cxf.wsdl,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.jaxws.context,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,javax.xml.bind,org.springframework.util,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.xml.resolver,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf.resource,org.apache.cxf,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.frontend,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.jaxb,org.apache.cxf.workqueue,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.wsdl.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.apache.cxf.staxutils,org.jaxen.jdom,org.jdom.output,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.configuration.security,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.ws.policy,javax.xml.ws.wsaddressing,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.bus,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.cxf.common.logging,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.io,javax.xml.ws.spi,org.apache.cxf,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.jdom.input,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type.java5)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type.java5
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle-minimal/2.1.4' presentationname='Apache CXF Minimal Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle-minimal' uri='../org/apache/cxf/cxf-bundle-minimal/2.1.4/cxf-bundle-minimal-2.1.4.jar' version='2.1.4'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2803446
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Minimal Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle-minimal'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.security.policy,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.xfire.aegis.type.java5'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.binding.xml,org.apache.cxf.feature,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.ws.soap,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.objectweb.asm,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.xml.stream,javax.security.auth.callback,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.ws.security.processor,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,javax.xml.parsers,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,javax.mail.util,org.apache.cxf.endpoint,javax.imageio,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.objectweb.asm,javax.xml.transform.dom,javax.imageio.stream,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.attachment,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.commons.logging,org.apache.cxf.aegis,org.jdom,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.xmlbeans.impl.values,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.xmlbeans.impl.schema,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.jaxb.attachment,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.codehaus.xfire.aegis.type.java5,org.jdom,javax.xml.bind.annotation,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.xml.sax,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas.configuration'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.interceptor,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.bus.spring,org.apache.cxf.configuration.jsse.spring,org.apache.cxf.common.util,org.apache.cxf.transports.http_jetty.configuration,org.springframework.beans.factory,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.xml.namespace,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans.impl.util,org.apache.xmlbeans,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,repackage,org.apache.cxf.tools.common,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.clustering,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.activation,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.jaxen,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.jaxen,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.jaxen.jdom'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms.support,org.springframework.jms,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.ws.addressing,org.springframework.jms.connection,org.springframework.beans.factory,org.apache.cxf.wsdl,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.cxf.transport.jms.continuations,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,org.apache.cxf.continuations,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.jaxws.context,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas.wsdl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.binding.soap,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.wsdl.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.apache.cxf.staxutils,org.jaxen.jdom,org.jdom.output,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.configuration.security,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop,org.springframework.aop.framework,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.ws.policy,javax.xml.ws.wsaddressing,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.io,javax.xml.ws.spi,org.apache.cxf,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.jdom.input,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.1.4))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.1.4))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.dom ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.1.4))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.1.4))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.model ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.1.4))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.1.4))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.1.4))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.util ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.1.4))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.validator ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.1.4))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type.java5)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type.java5
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
  <require extend='false' filter='(&amp;(package=schemas)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas
  </require>
  <require extend='false' filter='(&amp;(package=schemas.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas.configuration
  </require>
  <require extend='false' filter='(&amp;(package=schemas.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas.wsdl
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle-minimal/2.0.9' presentationname='Apache CXF Minimal Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle-minimal' uri='../org/apache/cxf/cxf-bundle-minimal/2.0.9/cxf-bundle-minimal-2.0.9.jar' version='2.0.9'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2404587
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Minimal Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle-minimal'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.headers,javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.jaxws.context,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.binding.xml,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.jaxws.binding.http,org.apache.cxf.databinding.source,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,org.apache.cxf.databinding.source,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.xml.stream,javax.security.auth.callback,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,org.apache.cxf.jaxws.support,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.xml.transform.sax,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.extension,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,org.xmlsoap.schemas.wsdl.http,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.validation,javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.tools.ant.types,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.tools.ant,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.xml.ws,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap,javax.jws.soap,javax.jws'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf,org.apache.cxf.transports.http.configuration'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.jaxws.support,org.apache.cxf.binding.soap,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='javax.xml.namespace,javax.activation,org.apache.cxf.aegis,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.transports.http,javax.wsdl.xml,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxws.support,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.handler,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms.support,org.springframework.jms,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.ws.addressing,org.springframework.jms.connection,org.springframework.beans.factory,org.apache.cxf.wsdl,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,javax.xml.bind,org.springframework.util,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.xml.resolver,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.xml.sax,javax.wsdl.xml,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.ws.commons.schema.resolver,org.apache.xml.resolver.helpers,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.jaxws.binding.soap,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.common.util.factory,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.databinding.source,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.jdom.output,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.message,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws,org.apache.cxf.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlsoap.schemas.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.wsdl.extensions,javax.jws,org.apache.cxf,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.bus,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.cxf.common.logging,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util.factory'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf,org.apache.cxf.common.i18n,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.9'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util.factory)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util.factory ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=2.0.9))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http ;version=2.0.9
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.bundle-minimal/2.2.3' presentationname='Apache CXF Minimal Bundle Jar' symbolicname='org.apache.cxf.bundle-minimal' uri='../org/apache/cxf/cxf-bundle-minimal/2.2.3/cxf-bundle-minimal-2.2.3.jar' version='2.2.3'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    3348876
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Minimal Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.bundle-minimal'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.builders'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.helpers,org.apache.neethi,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='javax.net.ssl,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.ws.rs,javax.servlet.http,javax.ws.rs.ext,javax.servlet,javax.ws.rs.core,org.apache.cxf.jaxrs.ext,org.apache.cxf.common.util,javax.activation,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.helpers,org.apache.cxf.transport.servlet,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,org.apache.cxf.ws.addressing,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.jaxrs.impl.tl,javax.xml.namespace,org.apache.cxf.jaxrs.utils.multipart,org.w3c.dom,org.apache.cxf.jaxrs.lifecycle,org.apache.cxf.common.classloader,org.apache.cxf.resource,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.trust'/>
    <p n='uses' v='org.apache.xml.security.keys.content.keyvalues,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,org.apache.cxf.service,javax.security.auth.callback,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.ws.security.message.token,org.apache.cxf.configuration,org.apache.cxf.common.classloader,org.apache.ws.security.conversation,org.apache.ws.security.conversation.dkalgo,org.apache.cxf,org.apache.ws.security.processor,org.apache.cxf.staxutils,org.apache.cxf.wsdl11,org.apache.ws.security,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.helpers,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.net.ssl,javax.security.auth.x500,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.configuration.security,org.apache.cxf.transport.http,javax.servlet.http,org.apache.cxf.security.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.configuration.security,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.message,org.apache.cxf.jaxws.handler,org.apache.cxf.jaxws.handler.soap,javax.xml.ws,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding,org.apache.cxf.staxutils,javax.xml.stream,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.namespace,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.saaj,org.apache.cxf.transport,org.apache.cxf.jaxws.context,org.apache.cxf.common.logging,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap,org.apache.cxf.io,javax.xml.bind,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='javax.xml.namespace,org.apache.ws.security.components.crypto,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security,org.apache.cxf.endpoint,org.apache.cxf.ws.security.policy,org.w3c.dom,org.apache.cxf.ws.security.policy.model,org.apache.cxf.service.model,javax.xml.xpath,javax.xml.soap,org.apache.cxf.common.classloader,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.helpers,javax.xml.stream,org.apache.ws.security.message,org.apache.cxf.ws.security.wss4j.policyhandlers,org.apache.cxf.binding.soap.saaj,org.apache.cxf.security,javax.security.auth.callback,org.apache.cxf.ws.security.tokenstore,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.ws.security.util,javax.xml.transform.dom,org.apache.ws.security.message.token,org.apache.ws.security.processor,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.common.util,javax.annotation,javax.xml.parsers,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.databinding,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.extension,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management,org.apache.cxf.buslifecycle'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.addressing.v200408,javax.xml.bind.annotation,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.addressing,org.apache.cxf.helpers,org.apache.cxf.ws.rm.manager,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.policy,javax.xml.datatype,javax.xml.bind,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.service.invoker,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.binding.soap.model,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.ws.rm.soap,javax.annotation,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.ws,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf.attachment,javax.activation,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,javax.xml.transform.sax,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.saaj,javax.imageio,org.apache.cxf.binding.soap.model,org.apache.cxf.common.i18n,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,javax.mail.util,javax.imageio.stream,javax.xml.bind,org.apache.cxf.common.classloader,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,org.apache.cxf.service.model,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.aegis,org.apache.cxf,javax.xml.bind.annotation,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.utils.schemas,javax.ws.rs,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.jaxrs.ext,org.apache.cxf.aegis.type,org.apache.cxf.staxutils,javax.xml.stream,org.codehaus.jettison,org.codehaus.jettison.mapped,org.apache.abdera.parser,org.apache.abdera.model,org.apache.abdera,org.apache.abdera.writer,org.apache.cxf.helpers,javax.servlet.http,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.jaxrs.impl,org.apache.cxf.jaxrs.utils.multipart,javax.xml.transform,javax.xml.transform.stream,javax.activation,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.client,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.model.wadl,javax.xml.transform.dom,org.apache.cxf.jaxrs.ext.xml,javax.xml.parsers,org.w3c.dom,org.apache.xmlbeans,org.xml.sax,javax.xml.transform.sax'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.service,javax.activation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.xml.namespace,javax.activation,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.common.logging,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.model'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.stream,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.common.util,org.w3c.dom,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,javax.xml.stream,org.apache.cxf.interceptor,org.apache.cxf.common.logging,org.apache.cxf.transport,org.apache.cxf.continuations,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.wsdl,org.apache.cxf.tools.common,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='javax.activation,org.apache.cxf.io,org.apache.cxf.helpers,org.apache.cxf.message,javax.mail.internet,javax.mail'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transport,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.helpers,javax.wsdl.extensions,javax.xml.namespace,org.apache.cxf.service.model,org.xml.sax,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.common.logging,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.management,org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.message,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.staxutils,org.apache.cxf.interceptor,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,org.apache.ws.commons.schema.resolver,org.xml.sax,org.apache.ws.commons.schema.utils,javax.xml.transform,org.apache.cxf.common.i18n,org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='uses' v='javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.utils,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.logging,org.xml.sax,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,org.apache.cxf.helpers,javax.xml.namespace,org.apache.cxf.common.util,org.springframework.beans.factory,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.xml.sax,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.namespace,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,javax.wsdl,javax.wsdl.xml,javax.wsdl.factory,org.w3c.dom.ls,org.apache.cxf.common.logging,org.w3c.dom.bootstrap,javax.xml.xpath'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.databinding,org.apache.cxf,org.apache.cxf.interceptor,org.apache.cxf.service,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.common.xmlschema,org.w3c.dom,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.binding,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,javax.wsdl,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf.clustering,org.apache.cxf.wsdl11,javax.wsdl.extensions.soap'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs.core,javax.annotation,org.apache.cxf.jaxrs.impl.tl,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.jaxb,javax.xml.datatype,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.namespace,org.apache.neethi,org.w3c.dom,org.apache.cxf.extension,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring,org.apache.cxf.ws.policy.builder.xml,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf,org.xml.sax,javax.xml.parsers,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.ws.policy.attachment.external,javax.wsdl.extensions,org.apache.cxf.staxutils,javax.xml.stream,org.springframework.context,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.feature,org.springframework.beans'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,javax.servlet,org.apache.cxf.security,org.apache.cxf.transport,org.apache.cxf.io,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,org.apache.cxf.common.util,org.apache.cxf.transport.https,org.apache.cxf.ws.policy,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.service.model,org.apache.cxf.configuration,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.helpers,javax.wsdl.extensions.soap,javax.wsdl.extensions.http,org.apache.cxf.wsdl.http,javax.wsdl,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.workqueue,org.apache.cxf.version,javax.net.ssl,org.apache.cxf.transports.http,org.apache.cxf.catalog,javax.wsdl.extensions.soap12,javax.wsdl.factory,javax.xml.parsers,javax.wsdl.extensions.schema,javax.xml.stream,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.wsdl.extensions,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.namespace,org.apache.cxf.service.model,javax.wsdl,org.apache.cxf.ws.policy.attachment,org.w3c.dom,org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='javax.servlet.http,javax.ws.rs.ext,javax.servlet,javax.ws.rs.core,org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.attachment,org.apache.cxf.message,javax.mail.internet,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.jaxrs.model'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.jaxws.handler,javax.xml.ws,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.interceptor,javax.xml.ws.soap,javax.xml.namespace,org.apache.cxf.binding.soap.saaj,org.apache.cxf.endpoint,org.apache.cxf.transport,org.apache.cxf.binding,org.apache.cxf.jaxws.context,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.bind,org.springframework.util,org.springframework.beans.factory,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.springframework.beans,org.springframework.context,org.springframework.beans.factory.wiring,org.apache.cxf.extension,org.apache.cxf.configuration'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.interceptor,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.phase,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.jaxrs.ext,javax.xml.stream.events,javax.ws.rs.ext,org.apache.cxf.io,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf.catalog,org.apache.cxf.resource,org.apache.cxf,javax.wsdl,javax.xml.transform.dom,javax.wsdl.extensions,javax.xml.namespace,javax.wsdl.extensions.schema,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.helpers,org.apache.cxf.common,javax.wsdl.factory,javax.xml.parsers,org.apache.cxf.wsdl,com.ibm.wsdl.extensions.schema,org.apache.cxf.binding,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.service,com.ibm.wsdl.extensions.soap,javax.annotation,javax.wsdl.extensions.mime,javax.xml.bind,javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12,org.apache.cxf.transport,org.apache.cxf.service.factory'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.tokenstore'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.ws.security.message.token,javax.xml.namespace,org.apache.ws.security.components.crypto,org.w3c.dom,javax.xml.datatype,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.w3c.dom,javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.xml,org.apache.cxf.staxutils,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.message,javax.xml.ws.wsaddressing,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.service,javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.attachment,org.apache.cxf.binding,org.apache.cxf.configuration.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.apache.cxf.configuration.security,org.mortbay.jetty.security,javax.net.ssl,org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.mortbay.jetty'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.transport,org.apache.cxf.interceptor,javax.activation,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.helpers,org.apache.cxf,org.apache.cxf.service,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model.wadl'/>
    <p n='uses' v='org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.jaxrs.provider,javax.xml.bind.annotation,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.ws.rs.core,org.apache.cxf.jaxrs,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.w3c.dom,javax.xml.namespace,org.apache.cxf.tools.common.dom,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.jdom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean,org.apache.cxf.helpers,javax.management.remote'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.core.io,org.springframework.beans.factory.xml,org.junit,org.apache.cxf,org.springframework.context,org.springframework.context.support,javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.helpers,org.xml.sax,org.springframework.beans,org.apache.cxf.bus.spring,org.apache.cxf.message,org.apache.cxf.transport,javax.wsdl.xml,org.apache.cxf.service.model,javax.wsdl.factory,org.apache.cxf.service,org.apache.cxf.wsdl11,javax.xml.stream,junit.framework,javax.xml.xpath,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.client'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.phase,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.ws.rs.ext,org.apache.cxf.binding,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.common.util,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.bus.spring,org.apache.cxf.jaxrs.ext.form'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.multipart'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.activation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.parsers,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.jdom,org.xml.sax,javax.xml.transform,javax.xml.transform.dom,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis,org.apache.cxf.aegis.type.collection,org.apache.cxf.common.logging,javax.activation,org.w3c.dom,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema,org.apache.cxf.common.xmlschema,org.xml.sax,javax.xml.xpath,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.apache.cxf.continuations,org.mortbay.jetty,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.primitive,javax.xml.bind,javax.xml.stream,org.apache.cxf.common.logging,org.w3c.dom,org.apache.cxf.common.classloader,org.apache.cxf.jaxb'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.namespace,org.apache.cxf.transport,org.springframework.beans,org.springframework.context'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.namespace,org.apache.cxf.binding.xml.interceptor,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.springframework.core.io.support,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.context,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.core.io,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.resource,org.springframework.beans,org.springframework.beans.factory,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.springframework.context.event,org.apache.cxf,org.springframework.beans.factory.config,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.core,org.apache.cxf.extension,org.apache.cxf.configuration,org.apache.cxf.helpers,javax.xml.parsers,javax.xml.stream,org.apache.cxf.common.injection,org.apache.cxf.feature,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.schemas'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.validation,org.apache.cxf,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.endpoint,org.apache.cxf.jaxws,org.apache.cxf,javax.xml.ws,org.apache.cxf.service.model,org.apache.cxf.service,javax.xml.namespace,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.wsdl,javax.wsdl,javax.xml.ws.soap,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.binding,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.util,javax.jws,org.apache.cxf.jaxb,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.frontend,org.apache.cxf.databinding,org.apache.cxf.databinding.source,javax.xml.bind.annotation,org.apache.cxf.wsdl11,org.apache.cxf.helpers,javax.xml.soap,javax.activation,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.datatype,javax.xml.bind.annotation.adapters,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.service,javax.xml.bind.attachment,javax.xml.validation,org.apache.cxf.jaxb.attachment,javax.xml.bind,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.helpers,javax.xml.transform.stream,org.apache.cxf.staxutils,org.apache.ws.commons.schema.utils,org.apache.commons.lang.builder,org.apache.commons.lang,javax.xml.transform,org.objectweb.asm,com.sun.xml.bind.marshaller'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management,org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.rm.persistence,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.w3c.dom,org.apache.cxf.transport.jms,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j.policyhandlers'/>
    <p n='uses' v='org.apache.ws.security.message,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.model,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.ws.security.util,javax.security.auth.callback,org.apache.cxf.endpoint,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.ws.security.conversation,org.apache.ws.security.handler,org.apache.cxf,org.apache.ws.security,org.apache.cxf.helpers,org.apache.cxf.ws.security.tokenstore'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.util,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.staxutils,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.multipart'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.xmlbeans,org.apache.cxf.common.logging,javax.xml.validation,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.stream,org.apache.ws.commons.schema,org.apache.xmlbeans.impl.values,org.apache.cxf.common.util,org.apache.cxf.staxutils,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.ws.commons.schema.resolver,org.xml.sax,org.apache.xmlbeans.impl.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='org.apache.cxf.frontend,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.configuration.security,javax.net.ssl,javax.xml.stream,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.ws.policy.attachment.external,org.apache.cxf.ws.policy,org.springframework.beans.factory.xml,org.springframework.beans.factory.support,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.jaxb.attachment,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.version,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.util,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.helpers,javax.xml.bind,org.junit,javax.xml.namespace,org.apache.cxf.tools.common.model,org.apache.cxf.test,org.apache.velocity.app,org.apache.velocity,org.apache.velocity.context'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.springframework.beans.factory.support,org.springframework.beans.factory.config,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.rm.policy,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.type,javax.xml.namespace,javax.xml.bind.annotation,org.apache.cxf.aegis.xml,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.bus,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.ws.commons.schema,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.form'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.impl,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.jaxws.support,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.endpoint.dynamic'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.v200408'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource,javax.resource.spi,javax.xml.namespace,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.common.util,org.apache.ws.commons.schema,org.apache.ws.commons.schema.utils,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf,org.apache.cxf.service.model,javax.xml.namespace,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.binding,org.apache.cxf.service,javax.annotation,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.configuration.spring,org.xml.sax,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf.transport,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.databinding,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.validation,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream,javax.xml.stream.events,org.apache.cxf.common.classloader,org.apache.cxf.feature,org.apache.cxf.attachment,javax.xml.xpath,org.apache.ws.commons.schema,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.frontend,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.service.invoker'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.message,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.helpers,org.apache.cxf.binding,org.apache.cxf.interceptor,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.transport,javax.wsdl,org.apache.ws.commons.schema,org.apache.cxf.binding.soap.model,org.apache.cxf.common.xmlschema,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,javax.wsdl.extensions.mime,org.apache.cxf.wsdl,org.apache.cxf.wsdl11,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.headers,org.apache.cxf.databinding,javax.wsdl.factory,javax.annotation,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.common.i18n,javax.annotation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream,javax.xml.namespace,javax.xml.stream.events,org.apache.cxf.common.util,org.w3c.dom,javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,org.apache.cxf.common.logging,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.classloader,javax.xml.parsers,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='org.mortbay.jetty,org.apache.cxf.endpoint,org.mortbay.jetty.handler,org.apache.cxf.transports.http,javax.servlet.http,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.servlet,org.apache.cxf.io,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transport.http,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations,org.mortbay.jetty.nio,org.apache.cxf.configuration.jsse,org.mortbay.thread,org.mortbay.jetty.security,org.apache.cxf.transport.https_jetty,javax.annotation,org.mortbay.jetty.servlet,org.apache.cxf.buslifecycle,javax.imageio'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.jaxws,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers,org.apache.cxf.frontend,org.apache.cxf.frontend.spring,org.apache.cxf.jaxws.support'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.namespace,javax.annotation,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='org.apache.cxf.attachment,javax.xml.bind.attachment,javax.xml.namespace,javax.activation,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.binding.soap,org.apache.cxf.binding,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl11,org.apache.cxf.jaxb,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.invoker,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.service.model,javax.xml.ws.soap,javax.xml.soap,org.apache.cxf.common.logging,org.apache.cxf.jaxws.binding,org.apache.cxf.binding.soap.model,javax.xml.ws'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xmlbeans.tools'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.util,repackage,org.apache.cxf.tools.common,org.apache.cxf.tools.util,org.xml.sax,org.apache.cxf.tools.common.model,javax.xml.namespace,org.w3c.dom,org.apache.cxf.tools.wsdlto.core,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.xsdschema,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.cxf.helpers,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.utils,org.apache.cxf.message,javax.servlet.http,javax.servlet,org.apache.cxf.jaxrs.provider,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.model.wadl,org.apache.cxf.phase,org.apache.cxf.ws.addressing,org.apache.cxf.security,org.apache.cxf.configuration.security,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,org.apache.cxf.message,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.attachment,org.apache.cxf.aegis.util,javax.activation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.rm,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.neethi,javax.xml.bind,org.apache.cxf.ws.rm.soap,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.util.date,org.w3c.dom,org.apache.cxf.aegis.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,org.apache.cxf.message,org.springframework.jms.core,javax.jms,org.apache.cxf.buslifecycle,org.springframework.jms.listener,org.apache.cxf.common.logging,org.springframework.jms,org.springframework.jms.support,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf,org.apache.cxf.ws.addressing,org.springframework.beans.factory.annotation,org.apache.cxf.endpoint,org.apache.cxf.feature,org.springframework.transaction,org.springframework.jms.support.destination,org.springframework.core.task,org.springframework.jms.connection,org.springframework.beans.factory,org.springframework.jndi,org.apache.cxf.helpers,org.apache.cxf.interceptor,org.apache.cxf.transport.jms.continuations,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.naming,org.apache.cxf.io,javax.annotation,org.apache.cxf.security,org.springframework.jms.support.converter,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.common.i18n,org.xml.sax,javax.xml.parsers,org.w3c.dom,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.configuration,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.service.model,org.w3c.dom,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring,org.apache.cxf.extension,org.apache.cxf.ws.addressing,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.ws.policy.attachment,org.apache.neethi,org.springframework.core.io,org.apache.cxf,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers,org.xml.sax,org.apache.cxf.resource,javax.xml.xpath'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.jws,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.common.util,javax.wsdl,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,javax.wsdl.extensions.soap12,org.apache.cxf.common,javax.wsdl.extensions,javax.jws.soap,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.cxf.message,org.apache.cxf.transport.jms,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,javax.xml.ws,org.apache.cxf.service.model,org.apache.cxf.phase,javax.xml.ws.handler,org.apache.cxf.jaxws.context,javax.jws,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.resource,org.apache.cxf.common.injection,javax.xml.ws.soap,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.soap,org.apache.cxf.binding.soap,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.binding,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.interceptor,org.apache.cxf.service.invoker,org.apache.cxf.message,org.apache.cxf.jaxrs.lifecycle,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.databinding,org.apache.cxf.configuration,org.apache.cxf.workqueue'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.annotation,javax.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.apache.cxf.aegis,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.resource,org.springframework.context.event,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.springframework.core.io,javax.naming,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transports.http,org.apache.cxf.wsdl.http,org.apache.cxf.interceptor,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.transport.http,org.apache.cxf.ws.addressing,javax.annotation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema,org.apache.cxf.helpers,org.apache.xml.resolver.helpers,org.apache.cxf.common.logging,javax.annotation,org.apache.xml.resolver,org.apache.xml.resolver.tools'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.soap,javax.xml.ws.handler,org.apache.cxf.headers,org.apache.cxf.endpoint,javax.xml.namespace,javax.activation,org.apache.cxf.service.invoker,org.w3c.dom,org.apache.cxf.jaxws.context,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.attachment,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.helpers,org.apache.cxf.common.logging,javax.xml.ws.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.jaxws.support,org.apache.cxf.binding.soap.saaj,javax.xml.bind,javax.xml.ws,org.apache.cxf.databinding,org.apache.cxf.service.factory,org.apache.cxf.configuration,org.apache.cxf.common.util,org.apache.cxf,javax.xml.ws.wsaddressing,org.apache.cxf.service,org.apache.cxf.jaxws.binding.soap,javax.jws,org.apache.cxf.frontend,org.apache.cxf.jaxws.handler,org.apache.cxf.resource,org.apache.cxf.common.injection,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.feature,javax.wsdl.extensions.soap12,javax.xml.ws.spi,org.apache.cxf.jaxb,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.wsdl.http,org.apache.cxf.databinding.source,org.apache.cxf.transport,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.wsdl11,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.security.policy.builders,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.type.basic,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,javax.xml.parsers,org.apache.cxf.aegis.type.java5,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.aegis.xml,org.apache.cxf.common.i18n,org.apache.cxf.aegis.xml.stax'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.apache.cxf.binding.soap,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.beans'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.cxf.transport,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.policy,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.common.i18n,javax.xml.parsers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.objectweb.asm,org.apache.cxf.common.i18n,org.apache.cxf.common.logging,net.sf.cglib.proxy,org.apache.cxf.helpers,org.springframework.aop.framework,org.springframework.aop.support,org.springframework.aop,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.headers,org.apache.cxf.common.util,org.apache.cxf.databinding,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.helpers,org.w3c.dom,org.apache.cxf,javax.xml.parsers,javax.xml.xpath,org.apache.cxf.binding,org.apache.cxf.io,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='org.jdom,org.apache.cxf.staxutils,javax.xml.stream,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.util,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.message,org.apache.cxf.interceptor,org.apache.cxf.endpoint,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.binding,org.apache.cxf,javax.xml.bind,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.ws.addressing.policy,org.apache.cxf.phase,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.cxf.ws.policy,javax.xml.ws,org.apache.cxf.helpers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.v200408,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,javax.xml.ws.wsaddressing,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.ws.addressing.soap,org.apache.cxf.feature'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf,org.apache.cxf.configuration,org.apache.cxf.workqueue,org.apache.cxf.common.xmlschema'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.transform.dom,org.w3c.dom.ls,org.xml.sax,org.apache.cxf.resource,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream.util,javax.xml.bind.annotation,org.apache.cxf.common.classloader,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl.http,javax.wsdl.factory'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,org.apache.cxf.interceptor,org.w3c.dom,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.policy.interceptors'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.security.policy,org.apache.cxf.ws.policy,org.apache.cxf.ws.security.policy.model,org.apache.cxf.security.transport,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.net.ssl,org.apache.cxf.helpers,org.apache.ws.security.handler,org.apache.cxf.ws.security.wss4j,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.ws.security.trust,org.apache.cxf.ws.addressing,org.apache.cxf.ws.security.tokenstore,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.service.invoker,javax.xml.transform.dom,org.apache.ws.security.message.token,org.apache.xml.security.utils,org.apache.ws.security.util,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.binding.soap,org.apache.cxf.common.logging,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.ws.security,org.apache.cxf.service,org.apache.cxf.ws.addressing.policy,org.apache.cxf.ws.policy.builder.primitive,javax.xml.stream,org.apache.ws.security.conversation,org.apache.ws.security.conversation.dkalgo'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.transform,org.apache.cxf.common,org.apache.cxf.io,org.apache.cxf,javax.xml.ws.spi,javax.xml.ws.wsaddressing,javax.xml.bind,javax.xml.ws,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.servlet'/>
    <p n='uses' v='org.apache.cxf.transport.servlet,org.apache.cxf.jaxrs.utils,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.commons.lang,org.apache.cxf.jaxrs.lifecycle,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema.extensions,javax.xml.namespace,org.apache.ws.commons.schema,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,javax.servlet.http,javax.servlet,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers,org.apache.cxf.service.model,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='org.apache.cxf,org.springframework.beans,org.apache.cxf.jaxrs.client,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.apache.cxf.jaxrs.utils,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.jaxrs,org.apache.cxf.common.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas.configuration'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemas.wsdl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.core ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.ext ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.client)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.client ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.form)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.form ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model.wadl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model.wadl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.schemas)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.schemas ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.2.3))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.2.3))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.dom ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.2.3))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.2.3))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.model ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.2.3))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.2.3))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.2.3))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.util ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.2.3))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.validator ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.2.3))' multiple='false' name='package' optional='true'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.builders)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.builders ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.interceptors)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.interceptors
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.policy.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.policy.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.tokenstore)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.tokenstore ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.trust)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.trust ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j.policyhandlers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j.policyhandlers
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xmlbeans.tools)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xmlbeans.tools ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.conversation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation.dkalgo)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.conversation.dkalgo
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content.keyvalues)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content.keyvalues
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.tool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.values
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
  <require extend='false' filter='(&amp;(package=schemas)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas
  </require>
  <require extend='false' filter='(&amp;(package=schemas.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas.configuration
  </require>
  <require extend='false' filter='(&amp;(package=schemas.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package schemas.wsdl
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle-minimal/2.0.10' presentationname='Apache CXF Minimal Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle-minimal' uri='../org/apache/cxf/cxf-bundle-minimal/2.0.10/cxf-bundle-minimal-2.0.10.jar' version='2.0.10'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2487076
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Minimal Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle-minimal'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.service,javax.wsdl,javax.activation,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,org.apache.cxf.databinding.source,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.xml.stream,javax.security.auth.callback,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.ws.security.processor,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,org.apache.cxf.jaxws.support,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.cxf.transport,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.xml.transform.sax,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,org.xmlsoap.schemas.wsdl.http,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.ws.policy.attachment.external,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.validation,javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.tools.ant.types,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.tools.ant,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.ws.addressing.v200403,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.xml.sax,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.transports.http_jetty.configuration,org.apache.cxf.configuration.spring,javax.xml.bind,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.xml.ws,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap,javax.jws.soap,javax.jws'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.jaxws.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='javax.xml.namespace,javax.activation,org.apache.cxf.aegis,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxws.support,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.handler,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.apache.cxf.common.logging,org.springframework.jms.support,org.springframework.jms,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.message,javax.naming,org.apache.cxf.ws.addressing,org.springframework.jms.connection,org.springframework.beans.factory,org.apache.cxf.wsdl,org.apache.cxf.endpoint,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.jndi,org.springframework.transaction,org.apache.cxf.configuration,org.springframework.beans.factory.annotation,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.cxf.transport.jms.continuations,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.springframework.core.task,javax.xml.bind,org.apache.cxf.continuations,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.continuations'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.jaxws.binding.soap,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.workqueue,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.databinding.source,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.jdom.output,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.configuration.security,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.security,javax.xml.ws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlsoap.schemas.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.v200403,org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.wsdl.extensions,javax.jws,org.apache.cxf,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util.factory'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf,org.apache.cxf.common.i18n,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.0.10'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util.factory)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util.factory ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.continuations)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.continuations ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=2.0.10))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http ;version=2.0.10
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.rt-bindings-jbi/2.2.3' presentationname='Apache CXF Runtime JBI Binding' symbolicname='org.apache.cxf.rt-bindings-jbi' uri='../org/apache/cxf/cxf-rt-bindings-jbi/2.2.3/cxf-rt-bindings-jbi-2.2.3.jar' version='2.2.3'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    41443
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Binding'/>
    <p n='symbolicname' v='org.apache.cxf.rt-bindings-jbi'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.binding.jbi.interceptor,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.jbi.messaging'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi.interceptor'/>
    <p n='uses' v='org.apache.cxf.binding.jbi,org.apache.cxf.message,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,javax.jbi.messaging,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.databinding,org.apache.cxf.transport,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.jbi'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi.spring'/>
    <p n='uses' v='org.apache.cxf.binding.jbi,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.beans.factory.xml'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.binding.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.binding.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.binding.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.jbi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.jbi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.cxf-rt-bindings-jbi/2.1.3' presentationname='Apache CXF Runtime JBI Binding' symbolicname='org.apache.cxf.cxf-rt-bindings-jbi' uri='../org/apache/cxf/cxf-rt-bindings-jbi/2.1.3/cxf-rt-bindings-jbi-2.1.3.jar' version='2.1.3'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    35312
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Binding'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-rt-bindings-jbi'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.cxf.message,org.apache.cxf.binding.jbi.interceptor,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.binding.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi.interceptor'/>
    <p n='uses' v='org.apache.cxf.binding.jbi,javax.jbi.messaging,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.jbi'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.binding.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.binding.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi.interceptor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi.interceptor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.jbi)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.jbi ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.cxf-rt-bindings-jbi/2.1.4' presentationname='Apache CXF Runtime JBI Binding' symbolicname='org.apache.cxf.cxf-rt-bindings-jbi' uri='../org/apache/cxf/cxf-rt-bindings-jbi/2.1.4/cxf-rt-bindings-jbi-2.1.4.jar' version='2.1.4'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    36812
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Binding'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-rt-bindings-jbi'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.cxf.message,org.apache.cxf.binding.jbi.interceptor,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.binding.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi.interceptor'/>
    <p n='uses' v='org.apache.cxf.binding.jbi,javax.jbi.messaging,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.jbi'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.binding.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.binding.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi.interceptor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi.interceptor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.jbi)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.jbi ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.cxf-rt-bindings-jbi/2.1.6' presentationname='Apache CXF Runtime JBI Binding' symbolicname='org.apache.cxf.cxf-rt-bindings-jbi' uri='../org/apache/cxf/cxf-rt-bindings-jbi/2.1.6/cxf-rt-bindings-jbi-2.1.6.jar' version='2.1.6'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    41484
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Binding'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-rt-bindings-jbi'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.cxf.message,org.apache.cxf.binding.jbi.interceptor,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.binding.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi.interceptor'/>
    <p n='uses' v='org.apache.cxf.binding.jbi,javax.jbi.messaging,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.jbi'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi.spring'/>
    <p n='uses' v='org.apache.cxf.binding.jbi,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.binding.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.binding.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi.interceptor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi.interceptor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.jbi)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.jbi ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.rt-bindings-jbi/2.2.2' presentationname='Apache CXF Runtime JBI Binding' symbolicname='org.apache.cxf.rt-bindings-jbi' uri='../org/apache/cxf/cxf-rt-bindings-jbi/2.2.2/cxf-rt-bindings-jbi-2.2.2.jar' version='2.2.2'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    36767
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Binding'/>
    <p n='symbolicname' v='org.apache.cxf.rt-bindings-jbi'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.binding.jbi.interceptor,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.jbi.messaging'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi.interceptor'/>
    <p n='uses' v='org.apache.cxf.binding.jbi,org.apache.cxf.message,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,javax.jbi.messaging,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.databinding,org.apache.cxf.transport,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.jbi'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.binding.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.binding.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.binding.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.jbi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.jbi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.cxf-rt-bindings-jbi/2.1.5' presentationname='Apache CXF Runtime JBI Binding' symbolicname='org.apache.cxf.cxf-rt-bindings-jbi' uri='../org/apache/cxf/cxf-rt-bindings-jbi/2.1.5/cxf-rt-bindings-jbi-2.1.5.jar' version='2.1.5'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    36812
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Binding'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-rt-bindings-jbi'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.cxf.message,org.apache.cxf.binding.jbi.interceptor,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.binding.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi.interceptor'/>
    <p n='uses' v='org.apache.cxf.binding.jbi,javax.jbi.messaging,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.jbi'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.binding.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.binding.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi.interceptor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi.interceptor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.jbi)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.jbi ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.cxf-rt-bindings-jbi/2.2.0' presentationname='Apache CXF Runtime JBI Binding' symbolicname='org.apache.cxf.cxf-rt-bindings-jbi' uri='../org/apache/cxf/cxf-rt-bindings-jbi/2.2/cxf-rt-bindings-jbi-2.2.jar' version='2.2.0'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    36801
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Binding'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-rt-bindings-jbi'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.cxf.message,org.apache.cxf.binding.jbi.interceptor,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.binding.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi.interceptor'/>
    <p n='uses' v='org.apache.cxf.binding.jbi,javax.jbi.messaging,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.jbi'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.binding.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.binding.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.jbi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.jbi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.cxf-rt-bindings-jbi/2.1.2' presentationname='Apache CXF Runtime JBI Binding' symbolicname='org.apache.cxf.cxf-rt-bindings-jbi' uri='../org/apache/cxf/cxf-rt-bindings-jbi/2.1.2/cxf-rt-bindings-jbi-2.1.2.jar' version='2.1.2'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    35332
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Binding'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-rt-bindings-jbi'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.cxf.message,org.apache.cxf.binding.jbi.interceptor,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.binding.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi.interceptor'/>
    <p n='uses' v='org.apache.cxf.binding.jbi,javax.jbi.messaging,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.jbi'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.binding.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.binding.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi.interceptor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi.interceptor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.jbi)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.jbi ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.rt-bindings-jbi/2.2.1' presentationname='Apache CXF Runtime JBI Binding' symbolicname='org.apache.cxf.rt-bindings-jbi' uri='../org/apache/cxf/cxf-rt-bindings-jbi/2.2.1/cxf-rt-bindings-jbi-2.2.1.jar' version='2.2.1'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    36769
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF Runtime JBI Binding'/>
    <p n='symbolicname' v='org.apache.cxf.rt-bindings-jbi'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.binding.jbi.interceptor,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.jbi.messaging'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.jbi.interceptor'/>
    <p n='uses' v='org.apache.cxf.binding.jbi,org.apache.cxf.message,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,javax.jbi.messaging,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.databinding,org.apache.cxf.transport,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.jbi'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.binding.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.binding.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.binding.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.jbi.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.jbi.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.jbi)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.jbi ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle-jaxrs/2.1.6' presentationname='Apache CXF JAX-RS Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle-jaxrs' uri='../org/apache/cxf/cxf-bundle-jaxrs/2.1.6/cxf-bundle-jaxrs-2.1.6.jar' version='2.1.6'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2163435
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF JAX-RS Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle-jaxrs'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.transport.servlet,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxrs.ext,org.xml.sax,javax.activation,org.w3c.dom,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.transport,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.xfire.aegis.type.java5'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.schemas'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.validation,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,com.sun.xml.bind.marshaller,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.objectweb.asm,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management,org.apache.cxf.management.annotation,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.xmlbeans,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.codehaus.jettison.mapped,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.jaxrs.utils.schemas,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.abdera.parser,org.apache.cxf.jaxrs.impl,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.abdera,org.apache.cxf.endpoint,org.codehaus.jettison,javax.activation,org.w3c.dom,org.apache.cxf.jaxrs.client,org.apache.abdera.writer,javax.xml.bind.annotation,org.apache.cxf.jaxrs.ext.multipart,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,org.apache.cxf.jaxrs.utils.multipart,javax.ws.rs.core,org.apache.cxf.aegis.type,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.multipart'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.xml.namespace,javax.activation,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.attachment,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.jaxb.attachment,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.codehaus.xfire.aegis.type.java5,org.jdom,javax.xml.bind.annotation,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.form'/>
    <p n='uses' v='org.apache.cxf.jaxrs.impl,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.ws.commons.schema.utils,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.bus.spring,org.apache.cxf.configuration.jsse.spring,org.apache.cxf.common.util,org.apache.cxf.transports.http_jetty.configuration,org.springframework.beans.factory,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.io,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.xml.namespace,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,javax.xml.bind.annotation.adapters,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.clustering,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.transport,org.apache.cxf.configuration.security,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.ws.addressing,org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.activation,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.jaxen,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.version,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.attachment,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.mail.internet,org.apache.cxf.jaxrs.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.jaxen,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.jaxen.jdom'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.ws.rs,org.apache.cxf.configuration,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,org.apache.cxf.service,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,javax.annotation,org.apache.cxf.io,org.apache.cxf.jaxrs,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.common,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.apache.cxf.staxutils,org.jaxen.jdom,org.jdom.output,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop,net.sf.cglib.proxy,org.springframework.aop.framework,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.transport'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.xml.sax,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.client'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.binding,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.jaxrs.ext.form,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.multipart'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.activation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.jaxrs.client,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.jaxrs,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.core
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.ext
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.client)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.client ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.form)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.form ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.multipart)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.multipart ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.multipart)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.multipart ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.schemas)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.schemas ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type.java5)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type.java5
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.bundle-jaxrs/2.2.2' presentationname='Apache CXF JAX-RS Bundle Jar' symbolicname='org.apache.cxf.bundle-jaxrs' uri='../org/apache/cxf/cxf-bundle-jaxrs/2.2.2/cxf-bundle-jaxrs-2.2.2.jar' version='2.2.2'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1795519
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF JAX-RS Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.bundle-jaxrs'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='javax.net.ssl,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.ws.rs,javax.servlet.http,javax.ws.rs.ext,javax.servlet,javax.ws.rs.core,org.apache.cxf.jaxrs.ext,org.apache.cxf.common.util,javax.activation,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.helpers,org.apache.cxf.transport.servlet,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,org.apache.cxf.ws.addressing,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.jaxrs.impl.tl,org.apache.cxf.jaxrs.utils.multipart,org.w3c.dom,org.apache.cxf.jaxrs.lifecycle,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.namespace,org.apache.cxf.transport,org.springframework.beans,org.springframework.context'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.namespace,org.apache.cxf.binding.xml.interceptor,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.springframework.core.io.support,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.context,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.core.io,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.resource,org.springframework.beans,org.springframework.beans.factory,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.springframework.context.event,org.apache.cxf,org.springframework.beans.factory.config,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.core,org.apache.cxf.extension,org.apache.cxf.configuration,org.apache.cxf.helpers,javax.xml.parsers,javax.xml.stream,javax.annotation,org.apache.cxf.common.injection,org.apache.cxf.feature,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.schemas'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.validation,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.helpers,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.net.ssl,javax.security.auth.x500,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.configuration.security,org.apache.cxf.transport.http,javax.servlet.http,org.apache.cxf.security.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.datatype,org.apache.commons.lang.builder,javax.xml.bind,org.apache.commons.lang,javax.xml.bind.attachment,org.w3c.dom,javax.xml.transform.stream,javax.xml.stream,org.apache.cxf.common.util,org.xml.sax,javax.xml.namespace,org.objectweb.asm,org.apache.cxf.helpers,com.sun.xml.bind.marshaller'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.configuration.security,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management,org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.common.util,javax.annotation,javax.xml.parsers,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.databinding,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.extension,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management,org.apache.cxf.buslifecycle'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.aegis,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.jaxrs.utils.schemas,javax.ws.rs,javax.xml.validation,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.jaxrs.ext,org.apache.cxf.aegis.type,javax.xml.namespace,org.apache.cxf.staxutils,javax.xml.stream,org.apache.abdera.parser,org.apache.abdera.model,org.apache.abdera,org.apache.abdera.writer,org.apache.cxf.helpers,org.apache.cxf.jaxrs.impl,org.apache.cxf.jaxrs.utils.multipart,org.apache.cxf.jaxrs.ext.multipart,javax.xml.transform,javax.xml.transform.stream,org.codehaus.jettison.mapped,org.codehaus.jettison,javax.activation,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.client,org.apache.cxf.endpoint,javax.xml.transform.dom,org.apache.cxf.jaxrs.ext.xml,javax.xml.parsers,org.w3c.dom,org.apache.xmlbeans,org.xml.sax,javax.xml.transform.sax'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.util,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.staxutils,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.service,javax.activation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.multipart'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.common.logging,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,javax.xml.stream,org.apache.cxf.interceptor,org.apache.cxf.common.logging,org.apache.cxf.transport,org.apache.cxf.continuations,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.wsdl,org.apache.cxf.tools.common,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.configuration.security,javax.net.ssl,javax.xml.stream,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='javax.activation,org.apache.cxf.io,org.apache.cxf.helpers,org.apache.cxf.message,javax.mail.internet,javax.mail'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transport,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.type,javax.xml.namespace,javax.xml.bind.annotation,org.apache.cxf.aegis.xml,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.form'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.impl,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource,javax.resource.spi,javax.xml.namespace,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.message,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.staxutils,org.apache.cxf.interceptor,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.common.util,org.apache.ws.commons.schema,org.apache.ws.commons.schema.utils,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf,org.apache.cxf.service.model,javax.xml.namespace,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.annotation,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.configuration.spring,org.xml.sax,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf.transport,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.databinding,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.validation,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream,javax.xml.stream.events,org.apache.cxf.common.classloader,org.apache.cxf.feature,org.apache.cxf.attachment,javax.xml.xpath,org.apache.ws.commons.schema,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.frontend,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.service.invoker'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,org.apache.ws.commons.schema.resolver,org.xml.sax,org.apache.ws.commons.schema.utils,javax.xml.transform,org.apache.cxf.common.i18n,org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='uses' v='javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.utils,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.logging,org.xml.sax,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,org.apache.cxf.helpers,javax.xml.namespace,org.apache.cxf.common.util,org.springframework.beans.factory,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream,javax.xml.namespace,javax.xml.stream.events,org.apache.cxf.common.util,org.w3c.dom,javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,org.apache.cxf.common.logging,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.classloader,javax.xml.parsers,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.xml.sax,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.namespace,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,javax.wsdl,javax.wsdl.xml,javax.wsdl.factory,org.w3c.dom.ls,org.apache.cxf.common.logging,org.w3c.dom.bootstrap,javax.xml.xpath'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.namespace,javax.annotation,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='org.mortbay.jetty,org.apache.cxf.endpoint,org.mortbay.jetty.handler,org.apache.cxf.transports.http,javax.servlet.http,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,javax.servlet,org.apache.cxf.io,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transport.http,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations,org.mortbay.jetty.nio,org.apache.cxf.configuration.jsse,org.mortbay.thread,org.mortbay.jetty.security,org.apache.cxf.transport.https_jetty,javax.annotation,org.mortbay.jetty.servlet,org.apache.cxf.buslifecycle,javax.imageio'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf,org.apache.cxf.interceptor,org.apache.cxf.service,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs.core,javax.annotation,org.apache.cxf.jaxrs.impl.tl,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.utils,org.apache.cxf.message,javax.servlet.http,javax.servlet,org.apache.cxf.jaxrs.provider,org.apache.cxf.phase,org.apache.cxf.ws.addressing,org.apache.cxf.security,org.apache.cxf.configuration.security,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,org.apache.cxf.message,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.attachment,org.apache.cxf.aegis.util,javax.activation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.interceptor,org.apache.neethi,org.w3c.dom,org.apache.cxf.extension,org.apache.cxf.common.i18n,org.apache.cxf.helpers,org.xml.sax,javax.xml.parsers,org.apache.cxf.service.model,org.apache.cxf.transport'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,javax.servlet,org.apache.cxf.security,org.apache.cxf.transport,org.apache.cxf.io,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,org.apache.cxf.common.util,org.apache.cxf.transport.https,org.apache.cxf.ws.policy,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.service.model,org.apache.cxf.configuration,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.helpers,javax.wsdl.extensions.soap,javax.wsdl.extensions.http,org.apache.cxf.wsdl.http,javax.wsdl,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.workqueue,org.apache.cxf.version,javax.net.ssl,org.apache.cxf.transports.http,org.apache.cxf.catalog,javax.wsdl.extensions.soap12,javax.wsdl.factory,javax.xml.parsers,javax.wsdl.extensions.schema,javax.xml.stream,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.wsdl.extensions,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='javax.servlet.http,javax.ws.rs.ext,javax.servlet,javax.ws.rs.core,org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.attachment,org.apache.cxf.message,javax.mail.internet,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.util.date,org.w3c.dom,org.apache.cxf.aegis.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.common.i18n,org.xml.sax,javax.xml.parsers,org.w3c.dom,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.configuration,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.binding,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.interceptor,org.apache.cxf.service.invoker,org.apache.cxf.jaxrs.lifecycle,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.databinding,org.apache.cxf.configuration,org.apache.cxf.workqueue'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.annotation,javax.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.bind,org.springframework.util,org.springframework.beans.factory,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.springframework.beans,org.springframework.context,org.springframework.beans.factory.wiring,org.apache.cxf.extension,org.apache.cxf.configuration'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.interceptor,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.phase,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.jaxrs.ext,javax.xml.stream.events,javax.ws.rs.ext,org.apache.cxf.io,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.apache.cxf.aegis,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf.catalog,org.apache.cxf.resource,org.apache.cxf,javax.wsdl,javax.xml.transform.dom,javax.wsdl.extensions,javax.xml.namespace,javax.wsdl.extensions.schema,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.helpers,org.apache.cxf.common,javax.wsdl.factory,javax.xml.parsers,org.apache.cxf.wsdl,com.ibm.wsdl.extensions.schema,org.apache.cxf.binding,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.service,com.ibm.wsdl.extensions.soap,javax.annotation,javax.wsdl.extensions.mime,javax.xml.bind,javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12,org.apache.cxf.transport,org.apache.cxf.service.factory'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.resource,org.springframework.context.event,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.springframework.core.io,javax.naming,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transports.http,org.apache.cxf.wsdl.http,org.apache.cxf.interceptor,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.transport.http,org.apache.cxf.ws.addressing,javax.annotation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema,org.apache.cxf.helpers,org.apache.xml.resolver.helpers,org.apache.cxf.common.logging,javax.annotation,org.apache.xml.resolver,org.apache.xml.resolver.tools'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.xml,org.apache.cxf.staxutils,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.type.basic,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,javax.xml.parsers,org.apache.cxf.aegis.type.java5,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.aegis.xml,org.apache.cxf.common.i18n,org.apache.cxf.aegis.xml.stax'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.apache.cxf.configuration.security,org.mortbay.jetty.security,javax.net.ssl,org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.mortbay.jetty'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.transport,org.apache.cxf.interceptor,javax.activation,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.helpers,org.apache.cxf.service,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.objectweb.asm,org.apache.cxf.common.i18n,org.apache.cxf.common.logging,net.sf.cglib.proxy,org.apache.cxf.helpers,org.springframework.aop.framework,org.springframework.aop.support,org.springframework.aop,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='org.jdom,org.apache.cxf.staxutils,javax.xml.stream,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,org.apache.cxf.message,org.apache.cxf.transport'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf,org.apache.cxf.configuration,org.apache.cxf.workqueue,org.apache.cxf.common.xmlschema'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.transform.dom,org.w3c.dom.ls,org.xml.sax,org.apache.cxf.resource,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream.util,javax.xml.bind.annotation,org.apache.cxf.common.classloader,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl.http,javax.wsdl.factory'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.jdom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,org.apache.cxf.interceptor,org.w3c.dom,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.core.io,org.springframework.beans.factory.xml,org.junit,org.apache.cxf,org.springframework.context,org.springframework.context.support,javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.helpers,org.xml.sax,org.springframework.beans,org.apache.cxf.bus.spring,org.apache.cxf.message,org.apache.cxf.transport,javax.wsdl.xml,org.apache.cxf.service.model,javax.wsdl.factory,org.apache.cxf.service,org.apache.cxf.wsdl11,javax.xml.stream,junit.framework,javax.xml.xpath,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.client'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.jaxrs.provider,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.helpers,org.apache.cxf.service.model,org.apache.cxf.configuration.security,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.bus.spring,org.apache.cxf.jaxrs.ext.form'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.multipart'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.activation'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.parsers,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.jdom,org.xml.sax,javax.xml.transform,javax.xml.transform.dom,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.servlet'/>
    <p n='uses' v='org.apache.cxf.transport.servlet,org.apache.cxf.jaxrs.utils,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.commons.lang,org.apache.cxf.jaxrs.lifecycle,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema.extensions,javax.xml.namespace,org.apache.ws.commons.schema,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis,org.apache.cxf.aegis.type.collection,org.apache.cxf.common.logging,javax.activation,org.w3c.dom,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema,org.apache.cxf.common.xmlschema,org.xml.sax,javax.xml.xpath,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,javax.servlet.http,javax.servlet,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='org.apache.cxf,org.springframework.beans,org.apache.cxf.jaxrs.client,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.apache.cxf.jaxrs.utils,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.jaxrs,org.apache.cxf.common.util,javax.xml.namespace,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers,org.apache.cxf.service.model,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.apache.cxf.continuations,org.mortbay.jetty,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.common.logging,org.w3c.dom,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.core ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.ext ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.client)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.client ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.form)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.form ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.schemas)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.schemas ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle-jaxrs/2.2.0' presentationname='Apache CXF JAX-RS Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle-jaxrs' uri='../org/apache/cxf/cxf-bundle-jaxrs/2.2/cxf-bundle-jaxrs-2.2.jar' version='2.2.0'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2115868
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF JAX-RS Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle-jaxrs'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.transport.servlet,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxrs.ext,org.xml.sax,javax.activation,org.w3c.dom,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.transport,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,org.apache.cxf.jaxrs.utils.multipart,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.schemas'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.validation,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.objectweb.asm,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.annotation,javax.xml.parsers,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.xmlbeans,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.codehaus.jettison.mapped,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.jaxrs.utils.schemas,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.abdera.parser,org.apache.cxf.jaxrs.impl,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.abdera,org.apache.cxf.endpoint,org.codehaus.jettison,javax.activation,org.w3c.dom,org.apache.cxf.jaxrs.client,org.apache.abdera.writer,javax.xml.bind.annotation,org.apache.cxf.jaxrs.ext.multipart,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,org.apache.cxf.jaxrs.utils.multipart,javax.ws.rs.core,org.apache.cxf.aegis.type,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.multipart'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.attachment,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.commons.logging,org.apache.cxf.aegis,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.common.util,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.jaxb.attachment,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.xml.namespace,javax.xml.bind.annotation,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.common.xmlschema,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.form'/>
    <p n='uses' v='org.apache.cxf.jaxrs.impl,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.ws.commons.schema.utils,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.xml.sax,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.bus.spring,org.apache.cxf.configuration.jsse.spring,org.apache.cxf.common.util,org.apache.cxf.transports.http_jetty.configuration,org.springframework.beans.factory,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.xml.namespace,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.frontend,org.apache.cxf.common.i18n,javax.xml.bind.annotation.adapters,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.clustering,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.annotation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.transport,org.apache.cxf.configuration.security,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.ws.addressing,org.apache.cxf.security'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.version,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.attachment,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.mail.internet,org.apache.cxf.jaxrs.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.apache.ws.commons.schema,org.w3c.dom,org.apache.commons.logging,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.stream,javax.wsdl,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.ws.rs,org.apache.cxf.configuration,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,org.apache.cxf.service,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,javax.annotation,org.apache.cxf.io,org.apache.cxf.jaxrs,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema,org.apache.cxf.aegis.type,javax.xml.namespace,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.common,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.java5,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop,net.sf.cglib.proxy,org.springframework.aop.framework,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.transport'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.xml.sax,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.client'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.binding,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.jaxrs.ext.form,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.multipart'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.activation'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,org.apache.ws.commons.schema,javax.activation,org.w3c.dom,org.apache.commons.logging,javax.xml.xpath,org.apache.cxf.aegis.type.xml,org.apache.cxf.common.xmlschema,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.jaxrs.client,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.jaxrs,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.core ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.ext ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.client)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.client ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.form)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.form ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.schemas)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.schemas ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle-jaxrs/2.1.5' presentationname='Apache CXF JAX-RS Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle-jaxrs' uri='../org/apache/cxf/cxf-bundle-jaxrs/2.1.5/cxf-bundle-jaxrs-2.1.5.jar' version='2.1.5'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2139803
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF JAX-RS Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle-jaxrs'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.transport.servlet,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxrs.ext,org.xml.sax,javax.activation,org.w3c.dom,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.transport,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.xfire.aegis.type.java5'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.schemas'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.validation,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.objectweb.asm,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.xmlbeans,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.codehaus.jettison.mapped,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.jaxrs.utils.schemas,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.abdera.parser,org.apache.cxf.jaxrs.impl,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.abdera,org.apache.cxf.endpoint,org.codehaus.jettison,javax.activation,org.w3c.dom,org.apache.cxf.jaxrs.client,org.apache.abdera.writer,javax.xml.bind.annotation,org.apache.cxf.jaxrs.ext.multipart,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,org.apache.cxf.jaxrs.utils.multipart,javax.ws.rs.core,org.apache.cxf.aegis.type,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.multipart'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.attachment,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.jaxb.attachment,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.codehaus.xfire.aegis.type.java5,org.jdom,javax.xml.bind.annotation,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.form'/>
    <p n='uses' v='org.apache.cxf.jaxrs.impl,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.ws.commons.schema.utils,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.xml.sax,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.bus.spring,org.apache.cxf.configuration.jsse.spring,org.apache.cxf.common.util,org.apache.cxf.transports.http_jetty.configuration,org.springframework.beans.factory,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.xml.namespace,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,javax.xml.bind.annotation.adapters,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.clustering,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.annotation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.transport,org.apache.cxf.configuration.security,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.ws.addressing,org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.activation,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.jaxen,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.version,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.attachment,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.mail.internet,org.apache.cxf.jaxrs.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.jaxen,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.jaxen.jdom'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.common,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.ws.rs,org.apache.cxf.configuration,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,org.apache.cxf.service,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,javax.annotation,org.apache.cxf.io,org.apache.cxf.jaxrs,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.common,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.apache.cxf.staxutils,org.jaxen.jdom,org.jdom.output,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop,net.sf.cglib.proxy,org.springframework.aop.framework,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.transport'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.xml.sax,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.client'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.binding,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.jaxrs.ext.form,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.multipart'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.activation'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.jaxrs.client,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.jaxrs,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.1.5'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.core
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.ext
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.client)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.client ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.form)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.form ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.multipart)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.multipart ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.multipart)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.multipart ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.schemas)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.schemas ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.1.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type.java5)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type.java5
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.bundle-jaxrs/2.2.1' presentationname='Apache CXF JAX-RS Bundle Jar' symbolicname='org.apache.cxf.bundle-jaxrs' uri='../org/apache/cxf/cxf-bundle-jaxrs/2.2.1/cxf-bundle-jaxrs-2.2.1.jar' version='2.2.1'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2167047
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF JAX-RS Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.bundle-jaxrs'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='javax.net.ssl,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.ws.rs,javax.servlet.http,org.apache.cxf.jaxrs.model,javax.ws.rs.ext,javax.servlet,javax.ws.rs.core,org.apache.cxf.jaxrs.ext,org.apache.cxf.common.util,javax.activation,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.helpers,org.apache.cxf.transport.servlet,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,org.apache.cxf.ws.addressing,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.jaxrs.impl.tl,org.apache.cxf.jaxrs.utils.multipart'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.namespace,org.apache.cxf.transport,org.springframework.beans,org.springframework.context'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.namespace,org.apache.cxf.binding.xml.interceptor,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.springframework.core.io.support,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.context,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.core.io,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.resource,org.springframework.beans,org.springframework.beans.factory,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.springframework.context.event,org.apache.cxf,org.springframework.beans.factory.config,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.core,org.apache.cxf.extension,org.apache.cxf.configuration,org.apache.cxf.helpers,javax.xml.parsers,javax.xml.stream,javax.annotation,org.apache.cxf.common.injection,org.apache.cxf.feature,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.schemas'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.validation,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.helpers,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.net.ssl,javax.security.auth.x500,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.configuration.security,org.apache.cxf.transport.http,javax.servlet.http,org.apache.cxf.security.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.datatype,javax.xml.bind.annotation.adapters,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.service,javax.xml.bind.attachment,javax.xml.validation,org.apache.cxf.jaxb.attachment,javax.xml.bind,javax.xml.transform.dom,javax.xml.transform,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.factory,org.apache.cxf.common.xmlschema,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,javax.xml.stream,org.apache.cxf.interceptor,javax.xml.transform.stream,org.apache.cxf.staxutils,org.apache.cxf.helpers,org.apache.ws.commons.schema.utils,org.apache.commons.lang.builder,org.apache.commons.lang,org.xml.sax,org.objectweb.asm,com.sun.xml.bind.marshaller'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.configuration.security,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management,org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.common.util,javax.annotation,javax.xml.parsers,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.databinding,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.extension,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management,org.apache.cxf.buslifecycle'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.aegis,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.bind.annotation,org.apache.cxf.jaxrs.utils.schemas,javax.ws.rs,javax.xml.validation,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.jaxrs.ext,org.apache.cxf.aegis.type,javax.xml.namespace,org.apache.cxf.staxutils,javax.xml.stream,org.apache.abdera.parser,org.apache.abdera.model,org.apache.abdera,org.apache.abdera.writer,org.apache.cxf.helpers,org.apache.cxf.jaxrs.impl,org.apache.cxf.jaxrs.utils.multipart,org.apache.cxf.jaxrs.ext.multipart,javax.xml.transform,javax.xml.transform.stream,org.codehaus.jettison.mapped,org.codehaus.jettison,javax.activation,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.client,org.apache.cxf.endpoint,javax.xml.transform.dom,org.apache.cxf.jaxrs.ext.xml,javax.xml.parsers,org.w3c.dom,org.apache.xmlbeans'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.util,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.staxutils,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.service,javax.activation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.multipart'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.attachment'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.common.logging,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='org.apache.cxf.frontend,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,javax.xml.stream,org.apache.cxf.interceptor,org.apache.cxf.common.logging,org.apache.cxf.transport,org.apache.cxf.continuations,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.wsdl,org.apache.cxf.tools.common,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.configuration.security,javax.net.ssl,javax.xml.stream,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='javax.activation,org.apache.cxf.io,org.apache.cxf.helpers,org.apache.cxf.message,javax.mail.internet,javax.mail'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.jaxb.attachment,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transport,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.version,org.apache.cxf.tools.common.toolspec,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.common.util,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.helpers,javax.xml.bind,org.junit,javax.xml.namespace,org.apache.cxf.tools.common.model,org.apache.cxf.test,org.apache.velocity.app,org.apache.velocity,org.apache.velocity.context'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.type,javax.xml.namespace,javax.xml.bind.annotation,org.apache.cxf.aegis.xml,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.bus,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.ws.commons.schema,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.form'/>
    <p n='uses' v='org.apache.cxf.jaxrs.impl,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.common.logging,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource,javax.resource.spi,javax.xml.namespace,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.message,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.staxutils,org.apache.cxf.interceptor,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.common.util,org.apache.ws.commons.schema,org.apache.ws.commons.schema.utils,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf.transport,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.validation,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream,javax.xml.stream.events,org.apache.cxf.common.classloader,org.apache.cxf.feature,org.apache.cxf.attachment,javax.xml.xpath,org.apache.ws.commons.schema,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.frontend,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.service.invoker'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf,org.apache.cxf.service.model,javax.xml.namespace,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.annotation,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.configuration.spring,org.xml.sax,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,org.apache.ws.commons.schema.resolver,org.xml.sax,org.apache.ws.commons.schema.utils,javax.xml.transform,org.apache.cxf.common.i18n,org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='uses' v='javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.utils,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.message,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.helpers,org.apache.cxf.binding,org.apache.cxf.interceptor,org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.transport,javax.wsdl,org.apache.ws.commons.schema,org.apache.cxf.binding.soap.model,org.apache.cxf.common.xmlschema,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,javax.wsdl.extensions.mime,org.apache.cxf.wsdl11,org.apache.cxf.wsdl,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.headers,org.apache.cxf.databinding,javax.wsdl.factory,javax.annotation,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.logging,org.xml.sax,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,org.apache.cxf.helpers,javax.xml.namespace,org.apache.cxf.common.util,org.springframework.beans.factory,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream,javax.xml.namespace,javax.xml.stream.events,org.apache.cxf.common.util,org.w3c.dom,javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,org.apache.cxf.common.logging,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.classloader,javax.xml.parsers,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.xml.sax,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.namespace,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,javax.wsdl,javax.wsdl.xml,javax.wsdl.factory,org.w3c.dom.ls,org.apache.cxf.common.logging,org.w3c.dom.bootstrap,javax.xml.xpath'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.namespace,javax.annotation,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='org.mortbay.jetty,org.apache.cxf.endpoint,org.mortbay.jetty.handler,org.apache.cxf.transports.http,javax.servlet.http,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,javax.servlet,org.apache.cxf.io,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transport.http,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations,org.mortbay.jetty.nio,org.apache.cxf.configuration.jsse,org.mortbay.thread,org.mortbay.jetty.security,org.apache.cxf.transport.https_jetty,javax.annotation,org.mortbay.jetty.servlet,org.apache.cxf.buslifecycle,javax.imageio'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='org.apache.cxf.attachment,javax.xml.bind.attachment,javax.xml.namespace,javax.activation,org.apache.cxf.interceptor,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.binding.soap,org.apache.cxf.binding,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.soap.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl11,org.apache.cxf.jaxb,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.invoker,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.databinding,org.apache.cxf,org.apache.cxf.interceptor,org.apache.cxf.service,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.common.xmlschema,org.w3c.dom,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.service.invoker,org.apache.cxf.frontend,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.binding,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,javax.wsdl,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf.clustering,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.annotation,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.message,org.apache.cxf.jaxrs.utils,javax.servlet.http,javax.servlet,org.apache.cxf.jaxrs.provider,org.apache.cxf.ws.addressing,org.apache.cxf.security,org.apache.cxf.configuration.security,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,org.apache.cxf.message,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.attachment,org.apache.cxf.aegis.util,javax.activation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.interceptor,org.apache.neethi,org.w3c.dom,org.apache.cxf.extension,org.apache.cxf.common.i18n,org.apache.cxf.helpers,org.xml.sax,javax.xml.parsers,org.apache.cxf.service.model,org.apache.cxf.transport'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,javax.servlet,org.apache.cxf.security,org.apache.cxf.transport,org.apache.cxf.io,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,org.apache.cxf.common.util,org.apache.cxf.transport.https,org.apache.cxf.ws.policy,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.service.model,org.apache.cxf.configuration,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.helpers,javax.wsdl.extensions.soap,javax.wsdl.extensions.http,org.apache.cxf.wsdl.http,javax.wsdl,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.workqueue,org.apache.cxf.version,javax.net.ssl,org.apache.cxf.transports.http,org.apache.cxf.catalog,javax.wsdl.extensions.soap12,javax.wsdl.factory,javax.xml.parsers,javax.wsdl.extensions.schema,javax.xml.stream,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.wsdl.extensions,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.attachment,org.apache.cxf.message,javax.mail.internet,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.util.date,org.w3c.dom,org.apache.cxf.aegis.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.common.i18n,org.xml.sax,javax.xml.parsers,org.w3c.dom,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.configuration,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.jws,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,org.apache.cxf.common.util,javax.wsdl,javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,javax.wsdl.extensions.soap12,org.apache.cxf.common,javax.wsdl.extensions,javax.jws.soap,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.binding,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.interceptor,org.apache.cxf.jaxrs.utils,org.apache.cxf.service.invoker,org.apache.cxf.jaxrs.lifecycle,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.databinding,org.apache.cxf.configuration,org.apache.cxf.workqueue'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.annotation,javax.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.bind,org.springframework.util,org.springframework.beans.factory,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.springframework.beans,org.springframework.context,org.springframework.beans.factory.wiring,org.apache.cxf.extension,org.apache.cxf.configuration'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.interceptor,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.phase,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.jaxrs.ext,javax.xml.stream.events,javax.ws.rs.ext,org.apache.cxf.io,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.apache.cxf.aegis,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf.catalog,org.apache.cxf.resource,org.apache.cxf,javax.wsdl,javax.xml.transform.dom,javax.wsdl.extensions,javax.xml.namespace,javax.wsdl.extensions.schema,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.helpers,org.apache.cxf.common,javax.wsdl.factory,javax.xml.parsers,org.apache.cxf.wsdl,com.ibm.wsdl.extensions.schema,org.apache.cxf.binding,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.service,com.ibm.wsdl.extensions.soap,javax.annotation,javax.wsdl.extensions.mime,javax.xml.bind,javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12,org.apache.cxf.transport,org.apache.cxf.service.factory'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.resource,org.springframework.context.event,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.springframework.core.io,javax.naming,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transports.http,org.apache.cxf.wsdl.http,org.apache.cxf.interceptor,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.transport.http,org.apache.cxf.ws.addressing,javax.annotation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema,org.apache.cxf.helpers,org.apache.xml.resolver.helpers,org.apache.cxf.common.logging,javax.annotation,org.apache.xml.resolver,org.apache.xml.resolver.tools'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.w3c.dom,javax.wsdl,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.xml,org.apache.cxf.staxutils,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.type.basic,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,javax.xml.parsers,org.apache.cxf.aegis.type.java5,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.aegis.xml,org.apache.cxf.common.i18n,org.apache.cxf.aegis.xml.stax'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.apache.cxf.configuration.security,org.mortbay.jetty.security,javax.net.ssl,org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.mortbay.jetty'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.apache.cxf.binding.soap,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.beans'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.transport,org.apache.cxf.interceptor,javax.activation,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.helpers,org.apache.cxf.service,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.objectweb.asm,org.apache.cxf.common.i18n,org.apache.cxf.common.logging,net.sf.cglib.proxy,org.apache.cxf.helpers,org.springframework.aop.framework,org.springframework.aop.support,org.springframework.aop,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.phase,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.headers,org.apache.cxf.common.util,org.apache.cxf.databinding,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.helpers,org.w3c.dom,org.apache.cxf,javax.xml.parsers,javax.xml.xpath,org.apache.cxf.binding,org.apache.cxf.io,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.w3c.dom,javax.xml.namespace,org.apache.cxf.tools.common.dom,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='org.jdom,org.apache.cxf.staxutils,javax.xml.stream,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,org.apache.cxf.message,org.apache.cxf.transport'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf,org.apache.cxf.configuration,org.apache.cxf.workqueue,org.apache.cxf.common.xmlschema'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.transform.dom,org.w3c.dom.ls,org.xml.sax,org.apache.cxf.resource,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream.util,javax.xml.bind.annotation,org.apache.cxf.common.classloader,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl.http,javax.wsdl.factory'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.jdom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,org.apache.cxf.interceptor,org.w3c.dom,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.core.io,org.springframework.beans.factory.xml,org.junit,org.apache.cxf,org.springframework.context,org.springframework.context.support,javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.helpers,org.xml.sax,org.springframework.beans,org.apache.cxf.bus.spring,org.apache.cxf.message,org.apache.cxf.transport,javax.wsdl.xml,org.apache.cxf.service.model,javax.wsdl.factory,org.apache.cxf.service,org.apache.cxf.wsdl11,javax.xml.stream,junit.framework,javax.xml.xpath,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.client'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,javax.ws.rs,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,javax.ws.rs.core,org.apache.cxf.helpers,org.apache.cxf.jaxrs.model,org.apache.cxf.service.model,org.apache.cxf.configuration.security,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.bus.spring,org.apache.cxf.jaxrs.ext.form'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.multipart'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.activation'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.parsers,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.jdom,org.xml.sax,javax.xml.transform,javax.xml.transform.dom,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.servlet'/>
    <p n='uses' v='org.apache.cxf.transport.servlet,org.apache.cxf.jaxrs.utils,org.apache.cxf.endpoint,org.apache.commons.lang,org.apache.cxf.jaxrs.lifecycle,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema.extensions,javax.xml.namespace,org.apache.ws.commons.schema,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis,org.apache.cxf.aegis.type.collection,org.apache.cxf.common.logging,javax.activation,org.w3c.dom,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema,org.apache.cxf.common.xmlschema,org.xml.sax,javax.xml.xpath,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,javax.servlet.http,javax.servlet,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='org.apache.cxf,org.springframework.beans,org.apache.cxf.jaxrs.client,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.jaxrs,org.apache.cxf.common.util,javax.xml.namespace,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers,org.apache.cxf.service.model,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.apache.cxf.continuations,org.mortbay.jetty,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.common.logging,org.w3c.dom,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.core ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.ext ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.client)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.client ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.form)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.form ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.schemas)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.schemas ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle-jaxrs/2.1.2' presentationname='Apache CXF JAX-RS Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle-jaxrs' uri='../org/apache/cxf/cxf-bundle-jaxrs/2.1.2/cxf-bundle-jaxrs-2.1.2.jar' version='2.1.2'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1279070
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF JAX-RS Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle-jaxrs'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf,org.apache.cxf.transports.http.configuration'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.provider,org.apache.cxf.configuration.security,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.message,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.ws.addressing,org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.commons.lang.builder,javax.xml.datatype,org.apache.commons.lang,javax.xml.bind,javax.xml.ws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.xmlbeans,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.codehaus.jettison.mapped,javax.xml.bind.annotation.adapters,javax.xml.transform,org.apache.cxf.message,org.apache.abdera.parser,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.abdera,org.w3c.dom,org.apache.abdera.writer,javax.xml.bind.annotation,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.binding,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.configuration,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,javax.xml.bind,org.springframework.util,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.ws.rs,org.apache.cxf.message,org.apache.cxf.jaxrs.model,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.xml.resolver,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.xml.sax,javax.wsdl.xml,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.ws.commons.schema.resolver,org.apache.xml.resolver.helpers,javax.annotation,org.apache.xml.resolver,org.apache.cxf.resource,org.apache.cxf,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.extension,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.transport'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.jaxrs,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.1.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.core
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.ext
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.bundle-jaxrs/2.2.3' presentationname='Apache CXF JAX-RS Bundle Jar' symbolicname='org.apache.cxf.bundle-jaxrs' uri='../org/apache/cxf/cxf-bundle-jaxrs/2.2.3/cxf-bundle-jaxrs-2.2.3.jar' version='2.2.3'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1847604
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF JAX-RS Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.bundle-jaxrs'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='javax.net.ssl,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.ws.rs,javax.servlet.http,javax.ws.rs.ext,javax.servlet,javax.ws.rs.core,org.apache.cxf.jaxrs.ext,org.apache.cxf.common.util,javax.activation,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.helpers,org.apache.cxf.transport.servlet,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,org.apache.cxf.ws.addressing,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.jaxrs.impl.tl,javax.xml.namespace,org.apache.cxf.jaxrs.utils.multipart,org.w3c.dom,org.apache.cxf.jaxrs.lifecycle,org.apache.cxf.common.classloader,org.apache.cxf.resource,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.namespace,org.apache.cxf.transport,org.springframework.beans,org.springframework.context'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.namespace,org.apache.cxf.binding.xml.interceptor,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.springframework.core.io.support,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.springframework.context,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.core.io,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.resource,org.springframework.beans,org.springframework.beans.factory,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.springframework.context.event,org.apache.cxf,org.springframework.beans.factory.config,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.core,org.apache.cxf.extension,org.apache.cxf.configuration,org.apache.cxf.helpers,javax.xml.parsers,javax.xml.stream,org.apache.cxf.common.injection,org.apache.cxf.feature,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.schemas'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.validation,org.apache.cxf,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.helpers,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.net.ssl,javax.security.auth.x500,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.configuration.security,org.apache.cxf.transport.http,javax.servlet.http,org.apache.cxf.security.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.datatype,org.apache.commons.lang.builder,javax.xml.bind,org.apache.commons.lang,javax.xml.transform.dom,javax.xml.transform,javax.xml.bind.attachment,org.w3c.dom,javax.xml.transform.stream,javax.xml.stream,org.apache.cxf.common.util,org.xml.sax,javax.xml.namespace,org.objectweb.asm,org.apache.cxf.helpers,com.sun.xml.bind.marshaller'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.configuration.security,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management,org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.cxf.common.util,javax.annotation,javax.xml.parsers,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.databinding,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.extension,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management,org.apache.cxf.buslifecycle'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.aegis,org.apache.cxf,javax.xml.bind.annotation,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.utils.schemas,javax.ws.rs,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.jaxrs.ext,org.apache.cxf.aegis.type,org.apache.cxf.staxutils,javax.xml.stream,org.codehaus.jettison,org.codehaus.jettison.mapped,org.apache.abdera.parser,org.apache.abdera.model,org.apache.abdera,org.apache.abdera.writer,org.apache.cxf.helpers,javax.servlet.http,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.jaxrs.impl,org.apache.cxf.jaxrs.utils.multipart,javax.xml.transform,javax.xml.transform.stream,javax.activation,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.client,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.model.wadl,javax.xml.transform.dom,org.apache.cxf.jaxrs.ext.xml,javax.xml.parsers,org.w3c.dom,org.apache.xmlbeans,org.xml.sax,javax.xml.transform.sax'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.util,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.staxutils,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.service,javax.activation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.multipart'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.common.logging,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='org.w3c.dom,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management.annotation,javax.management,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.util,javax.xml.stream,org.apache.cxf.interceptor,org.apache.cxf.common.logging,org.apache.cxf.transport,org.apache.cxf.continuations,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common,javax.wsdl.extensions,javax.wsdl.extensions.http,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.wsdl,org.apache.cxf.tools.common,org.apache.cxf.bindings.xformat'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.configuration.security,javax.net.ssl,javax.xml.stream,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='javax.activation,org.apache.cxf.io,org.apache.cxf.helpers,org.apache.cxf.message,javax.mail.internet,javax.mail'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transport,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.type,javax.xml.namespace,javax.xml.bind.annotation,org.apache.cxf.aegis.xml,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.form'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.impl,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,javax.xml.bind.annotation.adapters'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource,javax.resource.spi,javax.xml.namespace,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.message,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.staxutils,org.apache.cxf.interceptor,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.common.util,org.apache.ws.commons.schema,org.apache.ws.commons.schema.utils,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf,org.apache.cxf.service.model,javax.xml.namespace,javax.xml.bind,org.apache.cxf.helpers,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.binding,org.apache.cxf.service,javax.annotation,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.configuration.spring,org.xml.sax,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.message,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf.transport,org.apache.cxf.phase,org.apache.cxf.service,org.apache.cxf.helpers,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.databinding,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.validation,org.apache.cxf.staxutils,org.apache.cxf.wsdl,javax.xml.stream,javax.xml.stream.events,org.apache.cxf.common.classloader,org.apache.cxf.feature,org.apache.cxf.attachment,javax.xml.xpath,org.apache.ws.commons.schema,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.frontend,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.service.invoker'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,org.apache.ws.commons.schema.resolver,org.xml.sax,org.apache.ws.commons.schema.utils,javax.xml.transform,org.apache.cxf.common.i18n,org.apache.cxf.common.logging'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='uses' v='javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.utils,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.logging,org.xml.sax,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.interceptor,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.binding,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf,org.springframework.beans,org.springframework.context,org.apache.cxf.bus.spring,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,org.apache.cxf.helpers,javax.xml.namespace,org.apache.cxf.common.util,org.springframework.beans.factory,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream,javax.xml.namespace,javax.xml.stream.events,org.apache.cxf.common.util,org.w3c.dom,javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,org.apache.cxf.common.logging,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.classloader,javax.xml.parsers,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.xml.sax,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.namespace,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,javax.wsdl,javax.wsdl.xml,javax.wsdl.factory,org.w3c.dom.ls,org.apache.cxf.common.logging,org.w3c.dom.bootstrap,javax.xml.xpath'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.namespace,javax.annotation,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='org.mortbay.jetty,org.apache.cxf.endpoint,org.mortbay.jetty.handler,org.apache.cxf.transports.http,javax.servlet.http,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.servlet,org.apache.cxf.io,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transport.http,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations,org.mortbay.jetty.nio,org.apache.cxf.configuration.jsse,org.mortbay.thread,org.mortbay.jetty.security,org.apache.cxf.transport.https_jetty,javax.annotation,org.mortbay.jetty.servlet,org.apache.cxf.buslifecycle,javax.imageio'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf,org.apache.cxf.interceptor,org.apache.cxf.service,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs.core,javax.annotation,org.apache.cxf.jaxrs.impl.tl,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.utils,org.apache.cxf.message,javax.servlet.http,javax.servlet,org.apache.cxf.jaxrs.provider,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.model.wadl,org.apache.cxf.phase,org.apache.cxf.ws.addressing,org.apache.cxf.security,org.apache.cxf.configuration.security,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.aegis,org.apache.cxf.message,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.helpers,javax.xml.stream,org.apache.cxf.attachment,org.apache.cxf.aegis.util,javax.activation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.interceptor,org.apache.neethi,org.w3c.dom,org.apache.cxf.extension,org.apache.cxf.common.i18n,org.apache.cxf.helpers,org.xml.sax,javax.xml.parsers,org.apache.cxf.service.model,org.apache.cxf.transport'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,javax.servlet,org.apache.cxf.security,org.apache.cxf.transport,org.apache.cxf.io,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,org.apache.cxf.common.util,org.apache.cxf.transport.https,org.apache.cxf.ws.policy,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl,org.apache.cxf.service.model,org.apache.cxf.configuration,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.helpers,javax.wsdl.extensions.soap,javax.wsdl.extensions.http,org.apache.cxf.wsdl.http,javax.wsdl,org.apache.cxf.configuration.jsse,javax.annotation,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.workqueue,org.apache.cxf.version,javax.net.ssl,org.apache.cxf.transports.http,org.apache.cxf.catalog,javax.wsdl.extensions.soap12,javax.wsdl.factory,javax.xml.parsers,javax.wsdl.extensions.schema,javax.xml.stream,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.wsdl.extensions,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='javax.servlet.http,javax.ws.rs.ext,javax.servlet,javax.ws.rs.core,org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.attachment,org.apache.cxf.message,javax.mail.internet,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.jaxrs.model'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.util.date,org.w3c.dom,org.apache.cxf.aegis.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.common.i18n,org.xml.sax,javax.xml.parsers,org.w3c.dom,org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.apache.cxf.configuration,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.binding,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.interceptor,org.apache.cxf.service.invoker,org.apache.cxf.message,org.apache.cxf.jaxrs.lifecycle,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.databinding,org.apache.cxf.configuration,org.apache.cxf.workqueue'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.annotation,javax.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.bind,org.springframework.util,org.springframework.beans.factory,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers,org.springframework.beans,org.springframework.context,org.springframework.beans.factory.wiring,org.apache.cxf.extension,org.apache.cxf.configuration'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.interceptor,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.phase,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.jaxrs.ext,javax.xml.stream.events,javax.ws.rs.ext,org.apache.cxf.io,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.apache.cxf.aegis,org.apache.ws.commons.schema'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf.catalog,org.apache.cxf.resource,org.apache.cxf,javax.wsdl,javax.xml.transform.dom,javax.wsdl.extensions,javax.xml.namespace,javax.wsdl.extensions.schema,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.helpers,org.apache.cxf.common,javax.wsdl.factory,javax.xml.parsers,org.apache.cxf.wsdl,com.ibm.wsdl.extensions.schema,org.apache.cxf.binding,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.service,com.ibm.wsdl.extensions.soap,javax.annotation,javax.wsdl.extensions.mime,javax.xml.bind,javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12,org.apache.cxf.transport,org.apache.cxf.service.factory'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.cxf.common.logging,org.apache.cxf,org.apache.cxf.transport,org.apache.cxf.resource,org.springframework.context.event,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.context.support,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.springframework.core.io,javax.naming,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transports.http,org.apache.cxf.wsdl.http,org.apache.cxf.interceptor,org.apache.cxf.common.util,org.apache.cxf.helpers,org.apache.cxf.message,org.apache.cxf.transport.http,org.apache.cxf.ws.addressing,javax.annotation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='javax.wsdl.xml,org.xml.sax,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.transport,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema,org.apache.cxf.helpers,org.apache.xml.resolver.helpers,org.apache.cxf.common.logging,javax.annotation,org.apache.xml.resolver,org.apache.xml.resolver.tools'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.aegis,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.helpers,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.xml,org.apache.cxf.staxutils,org.apache.cxf.io'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,org.apache.cxf.interceptor,org.apache.cxf.aegis.type.basic,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type,javax.xml.parsers,org.apache.cxf.aegis.type.java5,org.apache.cxf.helpers,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.aegis.xml,org.apache.cxf.common.i18n,org.apache.cxf.aegis.xml.stax'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.apache.cxf.configuration.security,org.mortbay.jetty.security,javax.net.ssl,org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.mortbay.jetty'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.transport,org.apache.cxf.interceptor,javax.activation,org.apache.cxf.endpoint,org.apache.cxf.service.model,org.apache.cxf.helpers,org.apache.cxf,org.apache.cxf.service,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model.wadl'/>
    <p n='uses' v='org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.message,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.jaxrs.provider,javax.xml.bind.annotation,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.ws.rs.core,org.apache.cxf.jaxrs,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.objectweb.asm,org.apache.cxf.common.i18n,org.apache.cxf.common.logging,net.sf.cglib.proxy,org.apache.cxf.helpers,org.springframework.aop.framework,org.springframework.aop.support,org.springframework.aop,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='org.jdom,org.apache.cxf.staxutils,javax.xml.stream,javax.xml.namespace'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation,javax.xml.bind,org.apache.cxf.message,org.apache.cxf.transport'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf,org.apache.cxf.configuration,org.apache.cxf.workqueue,org.apache.cxf.common.xmlschema'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.transform.dom,org.w3c.dom.ls,org.xml.sax,org.apache.cxf.resource,javax.xml.transform.stream,javax.xml.transform,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream.util,javax.xml.bind.annotation,org.apache.cxf.common.classloader,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl.http,javax.wsdl.factory'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,javax.xml.namespace,org.jdom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,javax.xml.stream,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.staxutils,org.apache.cxf.interceptor,org.w3c.dom,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.core.io,org.springframework.beans.factory.xml,org.junit,org.apache.cxf,org.springframework.context,org.springframework.context.support,javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.helpers,org.xml.sax,org.springframework.beans,org.apache.cxf.bus.spring,org.apache.cxf.message,org.apache.cxf.transport,javax.wsdl.xml,org.apache.cxf.service.model,javax.wsdl.factory,org.apache.cxf.service,org.apache.cxf.wsdl11,javax.xml.stream,junit.framework,javax.xml.xpath,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.client'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.phase,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.ws.rs.ext,org.apache.cxf.binding,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.common.util,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.bus.spring,org.apache.cxf.jaxrs.ext.form'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.multipart'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.activation'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.parsers,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.jdom,org.xml.sax,javax.xml.transform,javax.xml.transform.dom,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.servlet'/>
    <p n='uses' v='org.apache.cxf.transport.servlet,org.apache.cxf.jaxrs.utils,org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.commons.lang,org.apache.cxf.jaxrs.lifecycle,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema.extensions,javax.xml.namespace,org.apache.ws.commons.schema,org.w3c.dom'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis,org.apache.cxf.aegis.type.collection,org.apache.cxf.common.logging,javax.activation,org.w3c.dom,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema,org.apache.cxf.common.xmlschema,org.xml.sax,javax.xml.xpath,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf,org.apache.cxf.resource,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.ws.rs.ext,javax.ws.rs.core,javax.servlet.http,javax.servlet,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='org.apache.cxf,org.springframework.beans,org.apache.cxf.jaxrs.client,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.apache.cxf.jaxrs.utils,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring,org.apache.cxf.jaxrs,org.apache.cxf.common.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers,org.apache.cxf.service.model,javax.xml.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.apache.cxf.continuations,org.mortbay.jetty,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation.adapters,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.primitive,javax.xml.bind,javax.xml.stream,org.apache.cxf.common.logging,org.w3c.dom,org.apache.cxf.common.classloader,org.apache.cxf.jaxb'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.bind.annotation,org.apache.cxf.wsdl,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.core ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.ext ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.client)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.client ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.form)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.form ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model.wadl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model.wadl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.multipart)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.multipart ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.schemas)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.schemas ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle-jaxrs/2.1.3' presentationname='Apache CXF JAX-RS Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle-jaxrs' uri='../org/apache/cxf/cxf-bundle-jaxrs/2.1.3/cxf-bundle-jaxrs-2.1.3.jar' version='2.1.3'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1927391
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF JAX-RS Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle-jaxrs'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.xfire.aegis.type.java5'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,com.sun.xml.bind.api,org.w3c.dom,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.xmlbeans,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.codehaus.jettison.mapped,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.abdera.parser,org.apache.cxf.jaxrs.impl,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.abdera,org.w3c.dom,org.apache.abdera.writer,javax.xml.bind.annotation,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.aegis.type,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.attachment,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.commons.logging,org.apache.cxf.aegis,org.jdom,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.extension,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.jaxb.attachment,javax.xml.namespace,com.sun.xml.bind.api,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.codehaus.xfire.aegis.type.java5,org.jdom,javax.xml.bind.annotation,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.ws.addressing,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf,org.apache.cxf.transports.http.configuration'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.xml.namespace,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,javax.xml.bind.annotation.adapters,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.annotation'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.provider,org.apache.cxf.configuration.security,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.message,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.ws.addressing,org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.activation,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.jaxen,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.jaxen,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.jaxen.jdom'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.binding,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.configuration,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,javax.xml.bind,org.springframework.util,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.ws.rs,org.apache.cxf.message,org.apache.cxf.jaxrs.model,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.xml.resolver,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf.resource,org.apache.cxf,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.apache.cxf.staxutils,org.jaxen.jdom,org.jdom.output,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.transport'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.cxf.common.logging,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.jdom.input,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.jaxrs,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.core
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.ext
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type.java5)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type.java5
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.cxf.cxf-bundle-jaxrs/2.1.4' presentationname='Apache CXF JAX-RS Bundle Jar' symbolicname='org.apache.cxf.cxf-bundle-jaxrs' uri='../org/apache/cxf/cxf-bundle-jaxrs/2.1.4/cxf-bundle-jaxrs-2.1.4.jar' version='2.1.4'>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2037962
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache CXF JAX-RS Bundle Jar'/>
    <p n='symbolicname' v='org.apache.cxf.cxf-bundle-jaxrs'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.transport.servlet,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.jaxrs.ext,javax.activation,org.apache.cxf.jaxrs.provider,org.apache.cxf.service.model,org.apache.cxf.jaxrs.ext.multipart,org.apache.cxf.transport,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.resource,org.springframework.beans,org.apache.cxf.common.injection,org.apache.cxf.service,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.xfire.aegis.type.java5'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,javax.xml.stream,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.context.event,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,org.apache.cxf.configuration,javax.xml.transform.sax,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,com.sun.xml.fastinfoset.stax,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.schemas'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.validation,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.gzip'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,javax.security.auth.x500,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,org.apache.cxf.common.util,javax.xml.validation,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.objectweb.asm,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.xmlschema,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='org.apache.cxf.common.logging,com.ibm.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.provider'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.xmlbeans,org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.codehaus.jettison.mapped,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.jaxrs.utils.schemas,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.abdera.parser,org.apache.cxf.jaxrs.impl,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,org.apache.cxf.jaxrs.ext,javax.xml.stream,org.apache.abdera,org.codehaus.jettison,javax.activation,org.w3c.dom,org.apache.abdera.writer,javax.xml.bind.annotation,org.apache.cxf.jaxrs.ext.multipart,javax.xml.transform.dom,javax.ws.rs,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.utils.multipart,org.apache.cxf.aegis.type,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.common.logging,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.apache.cxf.io,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.utils.multipart'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.attachment,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.encoded'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.commons.logging,org.apache.cxf.aegis,org.jdom,org.apache.cxf.binding.soap,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,org.apache.cxf.aegis.type,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200403'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.extension,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.continuations,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,org.apache.cxf.common.util,javax.xml.bind,org.apache.cxf.staxutils,javax.net.ssl,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.wsdl.http,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.cxf.jaxb.attachment,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.validation,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.test,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.cxf.common.util,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.codehaus.xfire.aegis.type.java5,org.jdom,javax.xml.bind.annotation,org.apache.cxf.aegis,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.common.classloader,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jca.outbound'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,javax.resource,org.apache.commons.lang'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,javax.xml.transform,com.sun.xml.fastinfoset.stax.factory,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.xml.sax,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.xml.sax,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.lifecycle'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.common.classloader,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.ws.addressing,org.apache.cxf.interceptor,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.apache.cxf.configuration.security,org.apache.cxf.bus.spring,org.apache.cxf.configuration.jsse.spring,org.apache.cxf.common.util,org.apache.cxf.transports.http_jetty.configuration,org.springframework.beans.factory,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='javax.xml.stream.events,org.apache.cxf.common.logging,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.common.i18n,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf.transport.http_jetty.continuations,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.xml.namespace,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.attachment,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.service.invoker,javax.xml.bind.annotation.adapters,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.ws.commons.schema.extensions,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.databinding.source.mime,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.clustering,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.model'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.ws.rs,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf.jaxrs.impl.tl,javax.annotation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.configuration.security,org.apache.cxf.transport,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.ws.addressing,org.apache.cxf.security'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.activation,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.jaxen,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.workqueue,org.apache.cxf.transports.http,javax.wsdl.xml,org.apache.cxf.wsdl.http,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.staxutils,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.jaxrs.utils,org.apache.cxf.jaxrs.ext.multipart,javax.ws.rs,org.apache.cxf.attachment,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.servlet,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.mail.internet,org.apache.cxf.jaxrs.interceptor'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.jaxen,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.jaxen.jdom'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.buslifecycle,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml,org.apache.cxf.feature,org.apache.cxf.service.factory,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.binding,org.apache.cxf.jaxrs.impl,org.apache.cxf.common.util,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxrs.provider,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.ws.rs,org.apache.cxf.configuration,org.apache.cxf.jaxrs.lifecycle,javax.ws.rs.core,org.apache.cxf,org.apache.cxf.jaxrs.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.extension,org.apache.cxf.common.util,org.springframework.beans.factory.wiring,org.springframework.beans.factory,javax.xml.stream,org.w3c.dom,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans,org.springframework.util,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.interceptor'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.jaxrs.provider,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.ws.rs,org.apache.cxf.message,org.apache.cxf.jaxrs.model,javax.ws.rs.ext,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.annotation,org.apache.cxf.jaxrs,org.apache.cxf.service,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.bus.spring,org.springframework.context.support,org.apache.cxf.message,javax.servlet,javax.naming,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context.event,org.apache.cxf.wsdl.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.transport,org.apache.xml.resolver.helpers,org.apache.ws.commons.schema.resolver,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.apache.cxf.staxutils,org.jaxen.jdom,org.jdom.output,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.jaxen,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.java5,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.jaxen.jdom,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.objectweb.asm,org.springframework.aop,org.springframework.aop.framework,org.springframework.aop.support,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.transport'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.wsdl.http,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.ext.multipart'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.jaxrs.impl,javax.ws.rs.core,javax.activation'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source.mime'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.datatype,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.jdom.input,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.impl.tl'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.ws.rs.ext,javax.ws.rs.core,org.apache.cxf.jaxrs.ext'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxrs.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.jaxrs,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.continuations'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.message,org.mortbay.jetty,org.mortbay.util.ajax,org.apache.cxf.continuations'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.continuations'/>
    <p n='uses' v='org.apache.cxf.message'/>
    <p n='version' t='version' v='2.1.4'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.core
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ws.rs.ext
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.abdera.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.encoded)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.encoded ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source.mime)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source.mime ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.ext.multipart)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.ext.multipart ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl.tl)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl.tl ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.interceptor)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.interceptor ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.lifecycle)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.lifecycle ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.provider)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.provider ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.multipart)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.multipart ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils.schemas)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils.schemas ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jca.outbound)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jca.outbound ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.gzip)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.gzip ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.continuations)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.continuations
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200403)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200403 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.1.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type.java5)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type.java5
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.aop.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=repackage)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package repackage
  </require>
</resource>
<resource id='org.apache.ws.scout/1.1.0' presentationname='Apache Scout' symbolicname='org.apache.ws.scout' uri='../org/apache/ws/scout/scout/1.1/scout-1.1.jar' version='1.1.0'>
  <description>
    Apache Scout is an implementation of the JSR 93 - JavaTM API
    
    
    
    
    
    
    
    
    
    
    
     for
        
        XML
     Registries
    
     1.0
     (JAXR)
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    221500
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Scout'/>
    <p n='symbolicname' v='org.apache.ws.scout'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.scout.registry.infomodel'/>
    <p n='uses' v='javax.xml.registry.infomodel,javax.xml.registry'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.scout.registry'/>
    <p n='uses' v='javax.xml.registry,org.apache.ws.scout.registry.infomodel,org.apache.commons.logging,org.apache.ws.scout.model.uddi.v2,org.apache.ws.scout.util,javax.xml.registry.infomodel,org.apache.ws.scout.transport,javax.activation,org.xml.sax,org.w3c.dom,javax.xml.parsers,javax.xml.bind'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.scout.transport'/>
    <p n='uses' v='org.apache.ws.scout.registry,org.apache.axis.message,org.apache.axis.utils,org.w3c.dom,org.apache.commons.logging,javax.xml.rpc,org.apache.axis.client,org.apache.axis,javax.xml.parsers,org.apache.ws.scout.util,javax.naming'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.scout.model.uddi.v2'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.scout.util'/>
    <p n='uses' v='org.apache.ws.scout.registry.infomodel,org.apache.commons.logging,javax.xml.registry.infomodel,javax.xml.registry,org.apache.ws.scout.model.uddi.v2,javax.xml.transform.dom,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.registry)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.registry ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.registry.infomodel)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.registry.infomodel ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.scout.model.uddi.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.scout.model.uddi.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.scout.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.scout.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.scout.registry.infomodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.scout.registry.infomodel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.scout.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.scout.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.scout.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.scout.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.ws.scout/1.1.1' presentationname='Apache Scout' symbolicname='org.apache.ws.scout' uri='../org/apache/ws/scout/scout/1.1.1/scout-1.1.1.jar' version='1.1.1'>
  <description>
    Apache Scout is an implementation of the JSR 93 - JavaTM API
    
    
    
    
    
    
    
    
    
    
    
     for
        
        XML
     Registries
    
     1.0
     (JAXR)
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    221632
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Scout'/>
    <p n='symbolicname' v='org.apache.ws.scout'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.scout.registry.infomodel'/>
    <p n='uses' v='javax.xml.registry.infomodel,javax.xml.registry'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.scout.registry'/>
    <p n='uses' v='javax.xml.registry,org.apache.ws.scout.registry.infomodel,org.apache.commons.logging,org.apache.ws.scout.model.uddi.v2,org.apache.ws.scout.util,javax.xml.registry.infomodel,org.apache.ws.scout.transport,javax.activation,org.xml.sax,org.w3c.dom,javax.xml.transform,javax.xml.parsers,javax.xml.bind,javax.xml.transform.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.scout.transport'/>
    <p n='uses' v='org.apache.ws.scout.registry,org.apache.axis.message,org.apache.axis.utils,org.w3c.dom,org.apache.commons.logging,javax.xml.rpc,org.apache.axis.client,org.apache.axis,javax.xml.parsers,org.apache.ws.scout.util,javax.naming'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.scout.model.uddi.v2'/>
    <p n='uses' v='javax.xml.bind.annotation,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.scout.util'/>
    <p n='uses' v='org.apache.ws.scout.registry.infomodel,org.apache.commons.logging,javax.xml.registry.infomodel,javax.xml.registry,org.apache.ws.scout.model.uddi.v2,javax.xml.transform.dom,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.registry)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.registry ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.registry.infomodel)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.registry.infomodel ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.scout.model.uddi.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.scout.model.uddi.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.scout.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.scout.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.scout.registry.infomodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.scout.registry.infomodel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.scout.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.scout.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.scout.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.scout.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.felix.fileinstall/1.2.0' presentationname='Apache Felix File Install' symbolicname='org.apache.felix.fileinstall' uri='../org/apache/felix/org.apache.felix.fileinstall/1.2.0/org.apache.felix.fileinstall-1.2.0.jar' version='1.2.0'>
  <description>
    A utility to automatically install bundles from a directory.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    33138
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix File Install'/>
    <p n='symbolicname' v='org.apache.felix.fileinstall'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.fileinstall'/>
    <p n='uses' v='org.osgi.service.packageadmin,org.osgi.service.log,org.osgi.framework,org.osgi.util.tracker,org.apache.felix.fileinstall.util,org.osgi.service.cm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.fileinstall.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.fileinstall)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.fileinstall
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.fileinstall.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.fileinstall.util
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.felix.fileinstall/0.9.0' presentationname='Apache Felix File Install' symbolicname='org.apache.felix.fileinstall' uri='../org/apache/felix/org.apache.felix.fileinstall/0.9.0/org.apache.felix.fileinstall-0.9.0.jar' version='0.9.0'>
  <description>
    A utility to automatically install bundles from a directory.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26272
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix File Install'/>
    <p n='symbolicname' v='org.apache.felix.fileinstall'/>
    <p n='version' t='version' v='0.9.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.fileinstall'/>
    <p n='uses' v='org.osgi.service.packageadmin,org.osgi.service.log,org.osgi.framework,org.osgi.util.tracker,org.osgi.service.cm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.fileinstall)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.fileinstall
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.felix.fileinstall/1.0.0' presentationname='Apache Felix File Install' symbolicname='org.apache.felix.fileinstall' uri='../org/apache/felix/org.apache.felix.fileinstall/1.0.0/org.apache.felix.fileinstall-1.0.0.jar' version='1.0.0'>
  <description>
    A utility to automatically install bundles from a directory.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    32287
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix File Install'/>
    <p n='symbolicname' v='org.apache.felix.fileinstall'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.fileinstall'/>
    <p n='uses' v='org.osgi.service.packageadmin,org.osgi.service.log,org.osgi.framework,org.osgi.util.tracker,org.apache.felix.fileinstall.util,org.osgi.service.cm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.fileinstall.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.fileinstall)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.fileinstall
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.fileinstall.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.fileinstall.util
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.felix.fileinstall/0.9.2' presentationname='Apache Felix File Install' symbolicname='org.apache.felix.fileinstall' uri='../org/apache/felix/org.apache.felix.fileinstall/0.9.2/org.apache.felix.fileinstall-0.9.2.jar' version='0.9.2'>
  <description>
    A utility to automatically install bundles from a directory.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    32920
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix File Install'/>
    <p n='symbolicname' v='org.apache.felix.fileinstall'/>
    <p n='version' t='version' v='0.9.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.fileinstall'/>
    <p n='uses' v='org.osgi.service.packageadmin,org.osgi.service.log,org.osgi.framework,org.osgi.util.tracker,org.apache.felix.fileinstall.util,org.osgi.service.cm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.fileinstall.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.fileinstall)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.fileinstall
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.fileinstall.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.fileinstall.util
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.felix.fileinstall/2.0.0' presentationname='Apache Felix File Install' symbolicname='org.apache.felix.fileinstall' uri='../org/apache/felix/org.apache.felix.fileinstall/2.0.0/org.apache.felix.fileinstall-2.0.0.jar' version='2.0.0'>
  <description>
    A utility to automatically install bundles from a directory.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    45478
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix File Install'/>
    <p n='symbolicname' v='org.apache.felix.fileinstall'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.fileinstall'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.fileinstall)(version&gt;=2.0.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.fileinstall ;version=[2.0.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=[1.3.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=[1.2.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.log ;version=[1.3.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=[1.2.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.0.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=[1.0.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=[1.3.0,2.0.0)
  </require>
</resource>
<resource id='org.apache.felix.scr/1.0.4' presentationname='Apache Felix Declarative Services' symbolicname='org.apache.felix.scr' uri='../org/apache/felix/org.apache.felix.scr/1.0.4/org.apache.felix.scr-1.0.4.jar' version='1.0.4'>
  <description>
    Implementation of the Declarative Services specification 1.0
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    109455
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Declarative Services'/>
    <p n='symbolicname' v='org.apache.felix.scr'/>
    <p n='version' t='version' v='1.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.component'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.scr'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.scr)(version&gt;=1.0.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.scr ;version=1.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.scr/1.0.0' presentationname='Apache Felix Declarative Services' symbolicname='org.apache.felix.scr' uri='../org/apache/felix/org.apache.felix.scr/1.0.0/org.apache.felix.scr-1.0.0.jar' version='1.0.0'>
  <description>
    Implementation of the Declarative Services specification 1.0
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    106963
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Declarative Services'/>
    <p n='symbolicname' v='org.apache.felix.scr'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.component'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.scr'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.scr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.scr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.scr/1.0.2' presentationname='Apache Felix Declarative Services' symbolicname='org.apache.felix.scr' uri='../org/apache/felix/org.apache.felix.scr/1.0.2/org.apache.felix.scr-1.0.2.jar' version='1.0.2'>
  <description>
    Implementation of the Declarative Services specification 1.0
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    109407
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Declarative Services'/>
    <p n='symbolicname' v='org.apache.felix.scr'/>
    <p n='version' t='version' v='1.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.component'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.scr'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.scr)(version&gt;=1.0.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.scr ;version=1.0.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.scr/1.0.8' presentationname='Apache Felix Declarative Services' symbolicname='org.apache.felix.scr' uri='../org/apache/felix/org.apache.felix.scr/1.0.8/org.apache.felix.scr-1.0.8.jar' version='1.0.8'>
  <description>
    Implementation of the Declarative Services specification 1.0
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    112058
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Declarative Services'/>
    <p n='symbolicname' v='org.apache.felix.scr'/>
    <p n='version' t='version' v='1.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.component'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.scr'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.8'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.scr)(version&gt;=1.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.scr ;version=1.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.scr/1.0.6' presentationname='Apache Felix Declarative Services' symbolicname='org.apache.felix.scr' uri='../org/apache/felix/org.apache.felix.scr/1.0.6/org.apache.felix.scr-1.0.6.jar' version='1.0.6'>
  <description>
    Implementation of the Declarative Services specification 1.0
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    109747
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Declarative Services'/>
    <p n='symbolicname' v='org.apache.felix.scr'/>
    <p n='version' t='version' v='1.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.component'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.scr'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.scr)(version&gt;=1.0.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.scr ;version=1.0.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.upnp.basedriver/0.8.0.jdk13' presentationname='Apache Felix UPnP Base Driver' symbolicname='org.apache.felix.upnp.basedriver' uri='../org/apache/felix/org.apache.felix.upnp.basedriver/0.8.0/org.apache.felix.upnp.basedriver-0.8.0-jdk13.jar' version='0.8.0.jdk13'>
  <description>
    A Bundle implementation of the UPnP Service              Specification
    
    
    
    
    
    
    
    
    
    
    
     R4
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    282185
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix UPnP Base Driver'/>
    <p n='symbolicname' v='org.apache.felix.upnp.basedriver'/>
    <p n='version' t='version' v='0.8.0.jdk13'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.upnp.basedriver.resources'/>
    <p n='version' t='version' v='0.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.upnp.basedriver.controller'/>
    <p n='version' t='version' v='0.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.upnp.basedriver.util'/>
    <p n='version' t='version' v='0.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.upnp)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.upnp ;version=1.1.0
  </require>
</resource>
<resource id='org.apache.felix.upnp.basedriver/0.8.0' presentationname='Apache Felix UPnP Base Driver' symbolicname='org.apache.felix.upnp.basedriver' uri='../org/apache/felix/org.apache.felix.upnp.basedriver/0.8.0/org.apache.felix.upnp.basedriver-0.8.0.jar' version='0.8.0'>
  <description>
    A Bundle implementation of the UPnP Service              Specification
    
    
    
    
    
    
    
    
    
    
    
     R4
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    268764
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix UPnP Base Driver'/>
    <p n='symbolicname' v='org.apache.felix.upnp.basedriver'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.upnp.basedriver.resources'/>
    <p n='version' t='version' v='0.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.upnp.basedriver.controller'/>
    <p n='version' t='version' v='0.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.upnp.basedriver.util'/>
    <p n='version' t='version' v='0.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.upnp)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.upnp ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.felix.ipojo.webconsole/1.4.2' presentationname='Apache Felix iPOJO WebConsole Plugins' symbolicname='org.apache.felix.ipojo.webconsole' uri='../org/apache/felix/org.apache.felix.ipojo.webconsole/1.4.2/org.apache.felix.ipojo.webconsole-1.4.2.jar' version='1.4.2'>
  <description>
    iPOJO plugin for the Apache Felix Web Console. This plugin
    
    
    
    
    
    
    
    
    
    
    
     allows
     introspecting
    
    
     an
     iPOJO
     system
  
       with
     the
  
       Apache
    

        
   
     
     Felix
   
       Web Console.
  </description>
  <documentation>
    http://felix.apache.org/site/ipojo-webconsole-plugin.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    7697
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO WebConsole Plugins'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.webconsole'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.webconsole/1.4.0' presentationname='Apache Felix iPOJO WebConsole Plugin' symbolicname='org.apache.felix.ipojo.webconsole' uri='../org/apache/felix/org.apache.felix.ipojo.webconsole/1.4.0/org.apache.felix.ipojo.webconsole-1.4.0.jar' version='1.4.0'>
  <description>
    iPOJO plugin for the Apache Felix Web Console. This plugin
    
    
    
    
    
    
    
    
    
    
    
     allows
     introspecting
    
    
     an
     iPOJO
     system
  
       with
     the
  
       Apache
    

        
   
     
     Felix
   
       Web Console.
  </description>
  <documentation>
    http://felix.apache.org/site/ipojo-webconsole-plugin.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22089
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO WebConsole Plugin'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.webconsole'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.webconsole)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.webconsole ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.dependency)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.dependency ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.providedservice)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.providedservice
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.handler.temporal/1.4.0' presentationname='Apache Felix iPOJO Temporal Service Dependency Handler' symbolicname='org.apache.felix.ipojo.handler.temporal' uri='../org/apache/felix/org.apache.felix.ipojo.handler.temporal/1.4.0/org.apache.felix.ipojo.handler.temporal-1.4.0.jar' version='1.4.0'>
  <description>
    iPOJO Temporal Dependency Handler
  </description>
  <documentation>
    http://felix.apache.org/site/temporal-service-dependency.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    67784
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO Temporal Service Dependency Handler'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.handler.temporal'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.dependency)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.dependency ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.parser)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.parser ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.handler.temporal/0.8.1' presentationname='Apache Felix iPOJO Temporal Service Dependency Handler' symbolicname='org.apache.felix.ipojo.handler.temporal' uri='../org/apache/felix/org.apache.felix.ipojo.handler.temporal/0.8.1/org.apache.felix.ipojo.handler.temporal-0.8.1.jar' version='0.8.1'>
  <description>
    Apache felix is an OSGi implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13734
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO Temporal Service Dependency Handler'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.handler.temporal'/>
    <p n='version' t='version' v='0.8.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.parser)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.parser ;version=0.8.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.handler.temporal/1.2.0' presentationname='Apache Felix iPOJO Temporal Service Dependency Handler' symbolicname='org.apache.felix.ipojo.handler.temporal' uri='../org/apache/felix/org.apache.felix.ipojo.handler.temporal/1.2.0/org.apache.felix.ipojo.handler.temporal-1.2.0.jar' version='1.2.0'>
  <description>
    iPOJO Temporal Dependency Handler
  </description>
  <documentation>
    http://felix.apache.org/site/temporal-service-dependency.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    67778
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO Temporal Service Dependency Handler'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.handler.temporal'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.dependency)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.dependency ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.parser)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.parser ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.handler.temporal/1.0.0' presentationname='Apache Felix iPOJO Temporal Service Dependency Handler' symbolicname='org.apache.felix.ipojo.handler.temporal' uri='../org/apache/felix/org.apache.felix.ipojo.handler.temporal/1.0.0/org.apache.felix.ipojo.handler.temporal-1.0.0.jar' version='1.0.0'>
  <description>
    iPOJO Temporal Dependency Handler
  </description>
  <documentation>
    http://felix.apache.org/site/temporal-service-dependency.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15296
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO Temporal Service Dependency Handler'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.handler.temporal'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.dependency)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.dependency ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.parser)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.parser ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.bundlerepository/1.0.3' presentationname='Apache Felix Bundle Repository' symbolicname='org.apache.felix.bundlerepository' uri='../org/apache/felix/org.apache.felix.bundlerepository/1.0.3/org.apache.felix.bundlerepository-1.0.3.jar' version='1.0.3'>
  <description>
    Bundle repository service.
  </description>
  <documentation>
    http://oscar-osgi.sf.net/obr2/org.apache.felix.bundlerepository/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    130442
  </size>
  <source>
    http://oscar-osgi.sf.net/obr2/org.apache.felix.bundlerepository/org.apache.felix.bundlerepository-1.0.3-src.jar
  </source>
  <capability name='service'>
    <p n='service' v='org.osgi.service.obr.RepositoryAdmin'/>
  </capability>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Bundle Repository'/>
    <p n='symbolicname' v='org.apache.felix.bundlerepository'/>
    <p n='version' t='version' v='1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.obr'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.bundlerepository/1.4.1' presentationname='Apache Felix Bundle Repository' symbolicname='org.apache.felix.bundlerepository' uri='../org/apache/felix/org.apache.felix.bundlerepository/1.4.1/org.apache.felix.bundlerepository-1.4.1.jar' version='1.4.1'>
  <description>
    Bundle repository service.
  </description>
  <documentation>
    http://felix.apache.org/site/apache-felix-osgi-bundle-repository.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    151653
  </size>
  <source>
    http://felix.apache.org/site/downloads.cgi
  </source>
  <capability name='service'>
    <p n='service' v='org.osgi.service.obr.RepositoryAdmin'/>
  </capability>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Bundle Repository'/>
    <p n='symbolicname' v='org.apache.felix.bundlerepository'/>
    <p n='version' t='version' v='1.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.obr'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.bundlerepository/1.2.0' presentationname='Apache Felix Bundle Repository' symbolicname='org.apache.felix.bundlerepository' uri='../org/apache/felix/org.apache.felix.bundlerepository/1.2.0/org.apache.felix.bundlerepository-1.2.0.jar' version='1.2.0'>
  <description>
    Bundle repository service.
  </description>
  <documentation>
    http://felix.apache.org/site/apache-felix-osgi-bundle-repository-obr.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    134378
  </size>
  <source>
    http://felix.apache.org/site/downloads.cgi
  </source>
  <capability name='service'>
    <p n='service' v='org.osgi.service.obr.RepositoryAdmin'/>
  </capability>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Bundle Repository'/>
    <p n='symbolicname' v='org.apache.felix.bundlerepository'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.obr'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.bundlerepository/1.0.0' presentationname='Apache Felix Bundle Repository' symbolicname='org.apache.felix.bundlerepository' uri='../org/apache/felix/org.apache.felix.bundlerepository/1.0.0/org.apache.felix.bundlerepository-1.0.0.jar' version='1.0.0'>
  <description>
    Bundle repository service.
  </description>
  <documentation>
    http://oscar-osgi.sf.net/obr2/org.apache.felix.bundlerepository/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    128221
  </size>
  <source>
    http://oscar-osgi.sf.net/obr2/org.apache.felix.bundlerepository/org.apache.felix.bundlerepository-1.0.0-src.jar
  </source>
  <capability name='service'>
    <p n='service' v='org.osgi.service.obr.RepositoryAdmin'/>
  </capability>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Bundle Repository'/>
    <p n='symbolicname' v='org.apache.felix.bundlerepository'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.obr'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.obr
  </require>
</resource>
<resource id='org.apache.felix.bundlerepository/1.2.1' presentationname='Apache Felix Bundle Repository' symbolicname='org.apache.felix.bundlerepository' uri='../org/apache/felix/org.apache.felix.bundlerepository/1.2.1/org.apache.felix.bundlerepository-1.2.1.jar' version='1.2.1'>
  <description>
    Bundle repository service.
  </description>
  <documentation>
    http://felix.apache.org/site/apache-felix-osgi-bundle-repository.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    135820
  </size>
  <source>
    http://felix.apache.org/site/downloads.cgi
  </source>
  <capability name='service'>
    <p n='service' v='org.osgi.service.obr.RepositoryAdmin'/>
  </capability>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Bundle Repository'/>
    <p n='symbolicname' v='org.apache.felix.bundlerepository'/>
    <p n='version' t='version' v='1.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.obr'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.bundlerepository/1.0.2' presentationname='Apache Felix Bundle Repository' symbolicname='org.apache.felix.bundlerepository' uri='../org/apache/felix/org.apache.felix.bundlerepository/1.0.2/org.apache.felix.bundlerepository-1.0.2.jar' version='1.0.2'>
  <description>
    Bundle repository service.
  </description>
  <documentation>
    http://oscar-osgi.sf.net/obr2/org.apache.felix.bundlerepository/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    129041
  </size>
  <source>
    http://oscar-osgi.sf.net/obr2/org.apache.felix.bundlerepository/org.apache.felix.bundlerepository-1.0.2-src.jar
  </source>
  <capability name='service'>
    <p n='service' v='org.osgi.service.obr.RepositoryAdmin'/>
  </capability>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Bundle Repository'/>
    <p n='symbolicname' v='org.apache.felix.bundlerepository'/>
    <p n='version' t='version' v='1.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.obr'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.bundlerepository/1.4.0' presentationname='Apache Felix Bundle Repository' symbolicname='org.apache.felix.bundlerepository' uri='../org/apache/felix/org.apache.felix.bundlerepository/1.4.0/org.apache.felix.bundlerepository-1.4.0.jar' version='1.4.0'>
  <description>
    Bundle repository service.
  </description>
  <documentation>
    http://felix.apache.org/site/apache-felix-osgi-bundle-repository.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    146568
  </size>
  <source>
    http://felix.apache.org/site/downloads.cgi
  </source>
  <capability name='service'>
    <p n='service' v='org.osgi.service.obr.RepositoryAdmin'/>
  </capability>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Bundle Repository'/>
    <p n='symbolicname' v='org.apache.felix.bundlerepository'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.obr'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.gogo.runtime/0.2.0' presentationname='Apache Felix Gogo Shell Runtime' symbolicname='org.apache.felix.gogo.runtime' uri='../org/apache/felix/gogo/org.apache.felix.gogo.runtime/0.2.0/org.apache.felix.gogo.runtime-0.2.0.jar' version='0.2.0'>
  <description>
    Apache Felix Gogo Shell
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    58204
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Gogo Shell Runtime'/>
    <p n='symbolicname' v='org.apache.felix.gogo.runtime'/>
    <p n='version' t='version' v='0.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.threadio'/>
    <p n='version' t='version' v='0.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.command'/>
    <p n='version' t='version' v='0.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.command)(version&gt;=0.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.command ;version=0.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.packageadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.threadio)(version&gt;=0.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.threadio ;version=0.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker
  </require>
</resource>
<resource id='org.apache.felix.gogo.launcher/0.2.0' presentationname='Apache Felix Gogo Shell Launcher' symbolicname='org.apache.felix.gogo.launcher' uri='../org/apache/felix/gogo/org.apache.felix.gogo.launcher/0.2.0/org.apache.felix.gogo.launcher-0.2.0.jar' version='0.2.0'>
  <description>
    Apache Felix Gogo Shell
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    70650
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Gogo Shell Launcher'/>
    <p n='symbolicname' v='org.apache.felix.gogo.launcher'/>
    <p n='version' t='version' v='0.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.threadio'/>
    <p n='version' t='version' v='0.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.command'/>
    <p n='version' t='version' v='0.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework.launch)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework.launch
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.command)(version&gt;=0.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.command ;version=0.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.packageadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.threadio)(version&gt;=0.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.threadio ;version=0.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker
  </require>
</resource>
<resource id='org.apache.felix.gogo.console/0.2.0' presentationname='Apache Felix Gogo Shell Console' symbolicname='org.apache.felix.gogo.console' uri='../org/apache/felix/gogo/org.apache.felix.gogo.console/0.2.0/org.apache.felix.gogo.console-0.2.0.jar' version='0.2.0'>
  <description>
    Apache Felix Gogo Shell
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    64368
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Gogo Shell Console'/>
    <p n='symbolicname' v='org.apache.felix.gogo.console'/>
    <p n='version' t='version' v='0.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.command)(version&gt;=0.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.command ;version=0.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.packageadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.threadio)(version&gt;=0.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.threadio ;version=0.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker
  </require>
</resource>
<resource id='org.apache.felix.gogo.commands/0.2.0' presentationname='Apache Felix Gogo Shell Commands' symbolicname='org.apache.felix.gogo.commands' uri='../org/apache/felix/gogo/org.apache.felix.gogo.commands/0.2.0/org.apache.felix.gogo.commands-0.2.0.jar' version='0.2.0'>
  <description>
    Apache Felix Gogo Shell
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28303
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Gogo Shell Commands'/>
    <p n='symbolicname' v='org.apache.felix.gogo.commands'/>
    <p n='version' t='version' v='0.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.gogo.commands.basic'/>
    <p n='uses' v='org.apache.felix.gogo.commands,org.osgi.framework,org.apache.felix.gogo.commands.converter,org.osgi.service.command'/>
    <p n='version' t='version' v='0.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.gogo.commands'/>
    <p n='uses' v='org.osgi.service.command'/>
    <p n='version' t='version' v='0.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.gogo.commands.converter'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.gogo.commands)(version&gt;=0.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.gogo.commands ;version=0.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.command)(version&gt;=0.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.command ;version=0.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.handler.eventadmin/1.2.0' presentationname='Apache Felix iPOJO Event Admin Handler' symbolicname='org.apache.felix.ipojo.handler.eventadmin' uri='../org/apache/felix/org.apache.felix.ipojo.handler.eventadmin/1.2.0/org.apache.felix.ipojo.handler.eventadmin-1.2.0.jar' version='1.2.0'>
  <description>
    iPOJO Event Admin Handlers
  </description>
  <documentation>
    http://felix.apache.org/site/event-admin-handlers.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26481
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO Event Admin Handler'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.handler.eventadmin'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.event.publisher'/>
    <p n='uses' v='org.osgi.service.event,org.apache.felix.ipojo.metadata,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo.handlers.event,org.apache.felix.ipojo.parser,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.event'/>
    <p n='uses' v='org.apache.felix.ipojo.parser'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.event.subscriber'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.osgi.service.event,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo.parser,org.apache.felix.ipojo.handlers.event,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.event ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.event.publisher)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.event.publisher
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.parser)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.parser ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.event)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.event ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.event.subscriber)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.event.subscriber
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.handler.eventadmin/1.0.0' presentationname='Apache Felix iPOJO Event Admin Handler' symbolicname='org.apache.felix.ipojo.handler.eventadmin' uri='../org/apache/felix/org.apache.felix.ipojo.handler.eventadmin/1.0.0/org.apache.felix.ipojo.handler.eventadmin-1.0.0.jar' version='1.0.0'>
  <description>
    iPOJO Event Admin Handlers
  </description>
  <documentation>
    http://felix.apache.org/site/event-admin-handlers.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    25846
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO Event Admin Handler'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.handler.eventadmin'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.event.publisher'/>
    <p n='uses' v='org.osgi.service.event,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo.metadata,org.apache.felix.ipojo.parser,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='0.9.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.event'/>
    <p n='version' t='version' v='0.9.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.event.subscriber'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.osgi.service.event,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo.parser,org.apache.felix.ipojo.handlers.event,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='0.9.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.event ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.event.publisher)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.event.publisher
    
    
    
    
    
    
    
    
    
    
    
     ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.parser)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.parser ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.event)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.event ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.event.subscriber)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.event.subscriber
    
    
    
    
    
    
    
    
    
    
    
     ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.handler.eventadmin/1.4.0' presentationname='Apache Felix iPOJO Event Admin Handler' symbolicname='org.apache.felix.ipojo.handler.eventadmin' uri='../org/apache/felix/org.apache.felix.ipojo.handler.eventadmin/1.4.0/org.apache.felix.ipojo.handler.eventadmin-1.4.0.jar' version='1.4.0'>
  <description>
    iPOJO Event Admin Handlers
  </description>
  <documentation>
    http://felix.apache.org/site/event-admin-handlers.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26542
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO Event Admin Handler'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.handler.eventadmin'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.event.publisher'/>
    <p n='uses' v='org.osgi.service.event,org.apache.felix.ipojo.metadata,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo.handlers.event,org.apache.felix.ipojo.parser,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.event'/>
    <p n='uses' v='org.apache.felix.ipojo.parser'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.event.subscriber'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.osgi.service.event,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo.parser,org.apache.felix.ipojo.handlers.event,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.event ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.event.publisher)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.event.publisher
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.parser)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.parser ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.event)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.event ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.event.subscriber)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.event.subscriber
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.manipulator/1.4.0' presentationname='iPOJO Manipulator' symbolicname='org.apache.felix.org.apache.felix.ipojo.manipulator' uri='../org/apache/felix/org.apache.felix.ipojo.manipulator/1.4.0/org.apache.felix.ipojo.manipulator-1.4.0.jar' version='1.4.0'>
  <description>
    iPOJO Manipulator
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    156500
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Manipulator'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.manipulator'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.manipulator'/>
    <p n='uses' v='org.xml.sax,org.apache.felix.ipojo.metadata,org.xml.sax.helpers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.manipulator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.manipulator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.manipulator/1.2.0' presentationname='iPOJO Manipulator' symbolicname='org.apache.felix.org.apache.felix.ipojo.manipulator' uri='../org/apache/felix/org.apache.felix.ipojo.manipulator/1.2.0/org.apache.felix.ipojo.manipulator-1.2.0.jar' version='1.2.0'>
  <description>
    iPOJO Manipulator
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    154711
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Manipulator'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.manipulator'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.manipulator'/>
    <p n='uses' v='org.xml.sax,org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.manipulator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.manipulator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.manipulator/1.0.0' presentationname='iPOJO Manipulator' symbolicname='org.apache.felix.org.apache.felix.ipojo.manipulator' uri='../org/apache/felix/org.apache.felix.ipojo.manipulator/1.0.0/org.apache.felix.ipojo.manipulator-1.0.0.jar' version='1.0.0'>
  <description>
    iPOJO Manipulator
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    140318
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Manipulator'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.manipulator'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.manipulator'/>
    <p n='uses' v='org.xml.sax,org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.manipulator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.manipulator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.manipulator/1.4.2' presentationname='iPOJO Manipulator' symbolicname='org.apache.felix.org.apache.felix.ipojo.manipulator' uri='../org/apache/felix/org.apache.felix.ipojo.manipulator/1.4.2/org.apache.felix.ipojo.manipulator-1.4.2.jar' version='1.4.2'>
  <description>
    iPOJO Manipulator
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    156805
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Manipulator'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.manipulator'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.manipulator'/>
    <p n='uses' v='org.xml.sax,org.apache.felix.ipojo.metadata,org.xml.sax.helpers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.manipulator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.manipulator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.manipulator/0.8.0' presentationname='iPOJO Manipulator' symbolicname='org.apache.felix.org.apache.felix.ipojo.manipulator' uri='../org/apache/felix/org.apache.felix.ipojo.manipulator/0.8.0/org.apache.felix.ipojo.manipulator-0.8.0.jar' version='0.8.0'>
  <description>
    iPOJO Manipulator
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    127626
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Manipulator'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.manipulator'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.manipulator'/>
    <p n='uses' v='org.apache.felix.ipojo.metadata,org.xml.sax'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.manipulator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.manipulator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.felix.upnp.tester/0.4.0' presentationname='Apache Felix UPnP Tester' symbolicname='org.apache.felix.upnp.tester' uri='../org/apache/felix/org.apache.felix.upnp.tester/0.4.0/org.apache.felix.upnp.tester-0.4.0.jar' version='0.4.0'>
  <description>
    OSGi Generic Control Point to control UPnPDevice services
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    79173
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix UPnP Tester'/>
    <p n='symbolicname' v='org.apache.felix.upnp.tester'/>
    <p n='version' t='version' v='0.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.upnp.tester'/>
    <p n='uses' v='org.osgi.framework,javax.swing,org.apache.felix.upnp.tester.discovery,org.apache.felix.upnp.tester.gui,javax.swing.event,org.osgi.service.upnp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.upnp.tester.gui'/>
    <p n='uses' v='org.apache.felix.upnp.tester,javax.swing,javax.swing.table,org.osgi.service.upnp,org.apache.felix.upnp.basedriver.util,javax.swing.event,javax.swing.tree,org.apache.felix.upnp.tester.discovery,org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.upnp.tester.discovery'/>
    <p n='uses' v='org.osgi.service.upnp,org.osgi.framework,org.apache.felix.upnp.tester,org.apache.felix.upnp.tester.gui,org.apache.felix.upnp.basedriver.controller'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.event
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.table)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.table
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.tree
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.upnp.basedriver.controller)(version&gt;=0.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.upnp.basedriver.controller
    
    
    
    
    
    
    
    
    
    
    
     ;version=0.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.upnp.basedriver.util)(version&gt;=0.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.upnp.basedriver.util ;version=0.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.upnp.tester)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.upnp.tester
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.upnp.tester.discovery)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.upnp.tester.discovery
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.upnp.tester.gui)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.upnp.tester.gui
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.upnp)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.upnp ;version=1.1.0
  </require>
</resource>
<resource id='org.apache.felix.eventadmin/1.0.0' presentationname='Apache Felix EventAdmin' symbolicname='org.apache.felix.eventadmin' uri='../org/apache/felix/org.apache.felix.eventadmin/1.0.0/org.apache.felix.eventadmin-1.0.0.jar' version='1.0.0'>
  <description>
    This bundle provides an implementation of the OSGi R4 EventAdmin
    
    
    
    
    
    
    
    
    
    
    
     service.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    73372
  </size>
  <capability name='service'>
    <p n='service' v='org.osgi.service.event.EventAdmin'/>
  </capability>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix EventAdmin'/>
    <p n='symbolicname' v='org.apache.felix.eventadmin'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.event'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(service=org.osgi.service.event.EventHandler)' multiple='true' name='service' optional='false'>
    Import Service org.osgi.service.event.EventHandler
  </require>
  <require extend='false' filter='(service=org.osgi.service.log.LogService)' multiple='true' name='service' optional='false'>
    Import Service org.osgi.service.log.LogService
  </require>
  <require extend='false' filter='(service=org.osgi.service.log.LogReaderService)' multiple='true' name='service' optional='false'>
    Import Service org.osgi.service.log.LogReaderService
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.event ;version=1.1.0
  </require>
</resource>
<resource id='org.apache.felix.webconsole/1.2.8' presentationname='Apache Felix Web Management Console' symbolicname='org.apache.felix.webconsole' uri='../org/apache/felix/org.apache.felix.webconsole/1.2.8/org.apache.felix.webconsole-1.2.8.jar' version='1.2.8'>
  <description>
    Web Based Management Console for OSGi Frameworks. See     
    
    
    
    
    
    
    
    
    
    
    
       http://felix.apache.org/apache-felix-web-console.html
    
    
    
    
    
    
    
    
    
    
     for
   
      more
        
        information
    
    
     on this
    
     bundle.
  </description>
  <documentation>
    http://felix.apache.org/site/apache-felix-web-console.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    507026
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Web Management Console'/>
    <p n='symbolicname' v='org.apache.felix.webconsole'/>
    <p n='version' t='version' v='1.2.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.obr'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.webconsole'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.osgi.framework'/>
    <p n='version' t='version' v='1.2.8'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.portlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.portlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.scr)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.scr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.webconsole)(version&gt;=1.2.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.webconsole ;version=1.2.8
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.cm
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.deploymentadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.deploymentadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.event
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.http
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.log
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.metatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.metatype
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.packageadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.startlevel
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.felix.webconsole/1.2.2' presentationname='Apache Felix Web Management Console' symbolicname='org.apache.felix.webconsole' uri='../org/apache/felix/org.apache.felix.webconsole/1.2.2/org.apache.felix.webconsole-1.2.2.jar' version='1.2.2'>
  <description>
    Web Based Management Console for OSGi Frameworks. See     
    
    
    
    
    
    
    
    
    
    
    
       http://felix.apache.org/apache-felix-web-console.html
    
    
    
    
    
    
    
    
    
    
     for
   
      more
        
        information
    
    
     on this
    
     bundle.
  </description>
  <documentation>
    http://felix.apache.org/site/apache-felix-web-console.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    440882
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Web Management Console'/>
    <p n='symbolicname' v='org.apache.felix.webconsole'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.webconsole'/>
    <p n='uses' v='javax.servlet,org.osgi.framework,javax.servlet.http'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.obr'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.scr)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.scr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.webconsole)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.webconsole
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.cm
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.deploymentadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.deploymentadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.event
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.http
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.log
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.metatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.metatype
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.packageadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.startlevel
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.felix.webconsole/1.2.0' presentationname='Apache Felix Web Management Console' symbolicname='org.apache.felix.webconsole' uri='../org/apache/felix/org.apache.felix.webconsole/1.2.0/org.apache.felix.webconsole-1.2.0.jar' version='1.2.0'>
  <description>
    Web Based Management Console for OSGi Frameworks. See     
    
    
    
    
    
    
    
    
    
    
    
       http://felix.apache.org/apache-felix-web-console.html
    
    
    
    
    
    
    
    
    
    
     for
   
      more
        
        information
    
    
     on this
    
     bundle.
  </description>
  <documentation>
    http://felix.apache.org/apache-felix-web-console.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    409108
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Web Management Console'/>
    <p n='symbolicname' v='org.apache.felix.webconsole'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.webconsole'/>
    <p n='uses' v='javax.servlet,org.osgi.framework,javax.servlet.http'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.obr'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.scr)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.scr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.webconsole)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.webconsole
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.cm
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.deploymentadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.deploymentadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.http
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.log
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.metatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.metatype
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.packageadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.startlevel
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.felix.webconsole/1.0.0' presentationname='Apache Felix Web Management Console' symbolicname='org.apache.felix.webconsole' uri='../org/apache/felix/org.apache.felix.webconsole/1.0.0/org.apache.felix.webconsole-1.0.0.jar' version='1.0.0'>
  <description>
    Web Based Management Console for OSGi Frameworks
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    307388
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Web Management Console'/>
    <p n='symbolicname' v='org.apache.felix.webconsole'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.webconsole'/>
    <p n='uses' v='javax.servlet,javax.servlet.http'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.bundlerepository.metadataparser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.bundlerepository.metadataparser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.bundlerepository.metadataparser.kxmlsax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.bundlerepository.metadataparser.kxmlsax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.scr)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.scr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.webconsole)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.webconsole
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.http
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.metatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.metatype
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker
  </require>
</resource>
<resource id='org.apache.felix.webconsole/1.2.10' presentationname='Apache Felix Web Management Console' symbolicname='org.apache.felix.webconsole' uri='../org/apache/felix/org.apache.felix.webconsole/1.2.10/org.apache.felix.webconsole-1.2.10.jar' version='1.2.10'>
  <description>
    Web Based Management Console for OSGi Frameworks. See     
    
    
    
    
    
    
    
    
    
    
    
       http://felix.apache.org/apache-felix-web-console.html
    
    
    
    
    
    
    
    
    
    
     for
   
      more
        
        information
    
    
     on this
    
     bundle.
  </description>
  <documentation>
    http://felix.apache.org/site/apache-felix-web-console.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    512657
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Web Management Console'/>
    <p n='symbolicname' v='org.apache.felix.webconsole'/>
    <p n='version' t='version' v='1.2.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.webconsole'/>
    <p n='uses' v='javax.servlet,org.osgi.framework,javax.servlet.http'/>
    <p n='version' t='version' v='1.2.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.obr'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.portlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.portlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.scr)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.scr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.webconsole)(version&gt;=1.2.10))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.webconsole ;version=1.2.10
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.cm
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.deploymentadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.deploymentadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.event
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.http
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.log
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.metatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.metatype
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.packageadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.startlevel
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.felix.shell.tui/1.2.0' presentationname='Apache Felix Shell TUI' symbolicname='org.apache.felix.shell.tui' uri='../org/apache/felix/org.apache.felix.shell.tui/1.2.0/org.apache.felix.shell.tui-1.2.0.jar' version='1.2.0'>
  <description>
    A simple textual user interface for Felix' shell service.
  </description>
  <documentation>
    http://oscar-osgi.sf.net/obr2/org.apache.felix.shell.tui/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12455
  </size>
  <source>
    http://oscar-osgi.sf.net/obr2/org.apache.felix.shell.tui/org.apache.felix.shell.tui-1.2.0-src.jar
  </source>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Shell TUI'/>
    <p n='symbolicname' v='org.apache.felix.shell.tui'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(service=org.apache.felix.shell.ShellService)' multiple='true' name='service' optional='false'>
    Import Service org.apache.felix.shell.ShellService
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
</resource>
<resource id='org.apache.felix.shell.tui/1.0.0' presentationname='Apache Felix Shell TUI' symbolicname='org.apache.felix.shell.tui' uri='../org/apache/felix/org.apache.felix.shell.tui/1.0.0/org.apache.felix.shell.tui-1.0.0.jar' version='1.0.0'>
  <description>
    A simple textual user interface for Felix' shell service.
  </description>
  <documentation>
    http://oscar-osgi.sf.net/obr2/org.apache.felix.shell.tui/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11964
  </size>
  <source>
    http://oscar-osgi.sf.net/obr2/org.apache.felix.shell.tui/org.apache.felix.shell.tui-1.0.0-src.jar
  </source>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Shell TUI'/>
    <p n='symbolicname' v='org.apache.felix.shell.tui'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(service=org.apache.felix.shell.ShellService)' multiple='true' name='service' optional='false'>
    Import Service org.apache.felix.shell.ShellService
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.felix.shell.tui/1.0.2' presentationname='Apache Felix Shell TUI' symbolicname='org.apache.felix.shell.tui' uri='../org/apache/felix/org.apache.felix.shell.tui/1.0.2/org.apache.felix.shell.tui-1.0.2.jar' version='1.0.2'>
  <description>
    A simple textual user interface for Felix' shell service.
  </description>
  <documentation>
    http://oscar-osgi.sf.net/obr2/org.apache.felix.shell.tui/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12237
  </size>
  <source>
    http://oscar-osgi.sf.net/obr2/org.apache.felix.shell.tui/org.apache.felix.shell.tui-1.0.2-src.jar
  </source>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Shell TUI'/>
    <p n='symbolicname' v='org.apache.felix.shell.tui'/>
    <p n='version' t='version' v='1.0.2'/>
  </capability>
  <require extend='false' filter='(service=org.apache.felix.shell.ShellService)' multiple='true' name='service' optional='false'>
    Import Service org.apache.felix.shell.ShellService
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
</resource>
<resource id='org.apache.felix.shell.tui/1.4.0' presentationname='Apache Felix Shell TUI' symbolicname='org.apache.felix.shell.tui' uri='../org/apache/felix/org.apache.felix.shell.tui/1.4.0/org.apache.felix.shell.tui-1.4.0.jar' version='1.4.0'>
  <description>
    A simple textual user interface for Felix' shell service.
  </description>
  <documentation>
    http://felix.apache.org/site/apache-felix-shell-tui.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12735
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Shell TUI'/>
    <p n='symbolicname' v='org.apache.felix.shell.tui'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(service=org.apache.felix.shell.ShellService)' multiple='true' name='service' optional='false'>
    Import Service org.apache.felix.shell.ShellService
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.5.0
  </require>
</resource>
<resource id='org.apache.felix.shell.tui/1.0.1' presentationname='Apache Felix Shell TUI' symbolicname='org.apache.felix.shell.tui' uri='../org/apache/felix/org.apache.felix.shell.tui/1.0.1/org.apache.felix.shell.tui-1.0.1.jar' version='1.0.1'>
  <description>
    A simple textual user interface for Felix' shell service.
  </description>
  <documentation>
    http://oscar-osgi.sf.net/obr2/org.apache.felix.shell.tui/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12225
  </size>
  <source>
    http://oscar-osgi.sf.net/obr2/org.apache.felix.shell.tui/org.apache.felix.shell.tui-1.0.1-src.jar
  </source>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Shell TUI'/>
    <p n='symbolicname' v='org.apache.felix.shell.tui'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <require extend='false' filter='(service=org.apache.felix.shell.ShellService)' multiple='true' name='service' optional='false'>
    Import Service org.apache.felix.shell.ShellService
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.felix.prefs/1.0.2' presentationname='Apache Felix Prefrences Service' symbolicname='org.apache.felix.prefs' uri='../org/apache/felix/org.apache.felix.prefs/1.0.2/org.apache.felix.prefs-1.0.2.jar' version='1.0.2'>
  <description>
    Implementation of the OSGi Preferences Service Specification
    
    
    
    
    
    
    
    
    
    
    
     1.1
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    42402
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Prefrences Service'/>
    <p n='symbolicname' v='org.apache.felix.prefs'/>
    <p n='version' t='version' v='1.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.prefs'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.prefs'/>
    <p n='uses' v='org.apache.commons.codec.binary,org.osgi.service.prefs'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.prefs ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.shell.remote/1.0.2' presentationname='Apache Felix Remote Shell' symbolicname='org.apache.felix.org.apache.felix.shell.remote' uri='../org/apache/felix/org.apache.felix.shell.remote/1.0.2/org.apache.felix.shell.remote-1.0.2.jar' version='1.0.2'>
  <description>
    A simple remote textual user interface for Felix' shell service.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    23914
  </size>
  <category id='console'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Remote Shell'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.shell.remote'/>
    <p n='version' t='version' v='1.0.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.shell.remote/1.0.4' presentationname='Apache Felix Remote Shell' symbolicname='org.apache.felix.org.apache.felix.shell.remote' uri='../org/apache/felix/org.apache.felix.shell.remote/1.0.4/org.apache.felix.shell.remote-1.0.4.jar' version='1.0.4'>
  <description>
    A simple remote textual user interface for Felix' shell service.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    25133
  </size>
  <category id='console'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Remote Shell'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.shell.remote'/>
    <p n='version' t='version' v='1.0.4'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.felix.shell/1.0.1' presentationname='Apache Felix Shell Service' symbolicname='org.apache.felix.shell' uri='../org/apache/felix/org.apache.felix.shell/1.0.1/org.apache.felix.shell-1.0.1.jar' version='1.0.1'>
  <description>
    A simple OSGi command shell service.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    51433
  </size>
  <capability name='service'>
    <p n='service' v='org.apache.felix.shell.ShellService'/>
  </capability>
  <capability name='service'>
    <p n='service' v='org.ungoverned.osgi.service.shell.ShellService'/>
  </capability>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Shell Service'/>
    <p n='symbolicname' v='org.apache.felix.shell'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.ungoverned.osgi.service.shell'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.shell'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(service=org.osgi.service.startlevel.StartLevel)' multiple='true' name='service' optional='false'>
    Import Service org.osgi.service.startlevel.StartLevel
  </require>
  <require extend='false' filter='(service=org.osgi.service.packageadmin.PackageAdmin)' multiple='true' name='service' optional='false'>
    Import Service org.osgi.service.packageadmin.PackageAdmin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.ungoverned.osgi.service.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ungoverned.osgi.service.shell ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.shell/1.0.2' presentationname='Apache Felix Shell Service' symbolicname='org.apache.felix.shell' uri='../org/apache/felix/org.apache.felix.shell/1.0.2/org.apache.felix.shell-1.0.2.jar' version='1.0.2'>
  <description>
    A simple OSGi command shell service.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    51390
  </size>
  <capability name='service'>
    <p n='service' v='org.apache.felix.shell.ShellService'/>
  </capability>
  <capability name='service'>
    <p n='service' v='org.ungoverned.osgi.service.shell.ShellService'/>
  </capability>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Shell Service'/>
    <p n='symbolicname' v='org.apache.felix.shell'/>
    <p n='version' t='version' v='1.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.ungoverned.osgi.service.shell'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.shell'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(service=org.osgi.service.startlevel.StartLevel)' multiple='true' name='service' optional='false'>
    Import Service org.osgi.service.startlevel.StartLevel
  </require>
  <require extend='false' filter='(service=org.osgi.service.packageadmin.PackageAdmin)' multiple='true' name='service' optional='false'>
    Import Service org.osgi.service.packageadmin.PackageAdmin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.ungoverned.osgi.service.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ungoverned.osgi.service.shell ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.shell/1.4.0' presentationname='Apache Felix Shell Service' symbolicname='org.apache.felix.shell' uri='../org/apache/felix/org.apache.felix.shell/1.4.0/org.apache.felix.shell-1.4.0.jar' version='1.4.0'>
  <description>
    A simple OSGi command shell service.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    60833
  </size>
  <capability name='service'>
    <p n='service' v='org.apache.felix.shell.ShellService'/>
  </capability>
  <capability name='service'>
    <p n='service' v='org.ungoverned.osgi.service.shell.ShellService'/>
  </capability>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Shell Service'/>
    <p n='symbolicname' v='org.apache.felix.shell'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.ungoverned.osgi.service.shell'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.shell'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(service=org.osgi.service.startlevel.StartLevel)' multiple='true' name='service' optional='false'>
    Import Service org.osgi.service.startlevel.StartLevel
  </require>
  <require extend='false' filter='(service=org.osgi.service.packageadmin.PackageAdmin)' multiple='true' name='service' optional='false'>
    Import Service org.osgi.service.packageadmin.PackageAdmin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.ungoverned.osgi.service.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ungoverned.osgi.service.shell ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.shell/1.0.0' presentationname='Apache Felix Shell Service' symbolicname='org.apache.felix.shell' uri='../org/apache/felix/org.apache.felix.shell/1.0.0/org.apache.felix.shell-1.0.0.jar' version='1.0.0'>
  <description>
    A simple OSGi command shell service.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    50982
  </size>
  <capability name='service'>
    <p n='service' v='org.apache.felix.shell.ShellService'/>
  </capability>
  <capability name='service'>
    <p n='service' v='org.ungoverned.osgi.service.shell.ShellService'/>
  </capability>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Shell Service'/>
    <p n='symbolicname' v='org.apache.felix.shell'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.ungoverned.osgi.service.shell'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.shell'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(service=org.osgi.service.startlevel.StartLevel)' multiple='true' name='service' optional='false'>
    Import Service org.osgi.service.startlevel.StartLevel
  </require>
  <require extend='false' filter='(service=org.osgi.service.packageadmin.PackageAdmin)' multiple='true' name='service' optional='false'>
    Import Service org.osgi.service.packageadmin.PackageAdmin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.ungoverned.osgi.service.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ungoverned.osgi.service.shell ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.shell/1.2.0' presentationname='Apache Felix Shell Service' symbolicname='org.apache.felix.shell' uri='../org/apache/felix/org.apache.felix.shell/1.2.0/org.apache.felix.shell-1.2.0.jar' version='1.2.0'>
  <description>
    A simple OSGi command shell service.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    59114
  </size>
  <capability name='service'>
    <p n='service' v='org.apache.felix.shell.ShellService'/>
  </capability>
  <capability name='service'>
    <p n='service' v='org.ungoverned.osgi.service.shell.ShellService'/>
  </capability>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Shell Service'/>
    <p n='symbolicname' v='org.apache.felix.shell'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.ungoverned.osgi.service.shell'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.shell'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(service=org.osgi.service.startlevel.StartLevel)' multiple='true' name='service' optional='false'>
    Import Service org.osgi.service.startlevel.StartLevel
  </require>
  <require extend='false' filter='(service=org.osgi.service.packageadmin.PackageAdmin)' multiple='true' name='service' optional='false'>
    Import Service org.osgi.service.packageadmin.PackageAdmin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.ungoverned.osgi.service.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ungoverned.osgi.service.shell ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.handler.extender/1.4.0' presentationname='Apache Felix iPOJO Extender Pattern Handler' symbolicname='org.apache.felix.ipojo.handler.extender' uri='../org/apache/felix/org.apache.felix.ipojo.handler.extender/1.4.0/org.apache.felix.ipojo.handler.extender-1.4.0.jar' version='1.4.0'>
  <description>
    iPOJO Extender Pattern Handler
  </description>
  <documentation>
    http://felix.apache.org/site/extender-pattern-handler.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14939
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO Extender Pattern Handler'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.handler.extender'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handler.extender'/>
    <p n='uses' v='org.osgi.framework,org.apache.felix.ipojo.util,org.apache.felix.ipojo,org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handler.extender)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handler.extender
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.handler.extender/1.2.0' presentationname='Apache Felix iPOJO Extender Pattern Handler' symbolicname='org.apache.felix.ipojo.handler.extender' uri='../org/apache/felix/org.apache.felix.ipojo.handler.extender/1.2.0/org.apache.felix.ipojo.handler.extender-1.2.0.jar' version='1.2.0'>
  <description>
    iPOJO Extender Pattern Handler
  </description>
  <documentation>
    http://felix.apache.org/site/extender-pattern-handler.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14802
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO Extender Pattern Handler'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.handler.extender'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.handler.extender.pattern/1.0.0' presentationname='Apache Felix iPOJO Extender Pattern Handler' symbolicname='org.apache.felix.ipojo.handler.extender.pattern' uri='../org/apache/felix/org.apache.felix.ipojo.handler.extender/1.0.0/org.apache.felix.ipojo.handler.extender-1.0.0.jar' version='1.0.0'>
  <description>
    iPOJO Extender Pattern Handler
  </description>
  <documentation>
    http://felix.apache.org/site/extender-pattern-handler.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14598
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO Extender Pattern Handler'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.handler.extender.pattern'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.http.jetty/1.0.0' presentationname='HTTP Service' symbolicname='org.apache.felix.http.jetty' uri='../org/apache/felix/org.apache.felix.http.jetty/1.0.0/org.apache.felix.http.jetty-1.0.0.jar' version='1.0.0'>
  <description>
    An implementation of the OSGi HTTP Service                
    
    
    
    
    
    
    
    
    
    
    
       
         
        using
     Jetty.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    769498
  </size>
  <capability name='service'>
    <p n='service' v='org.osgi.service.http.HttpService'/>
  </capability>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='HTTP Service'/>
    <p n='symbolicname' v='org.apache.felix.http.jetty'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.http'/>
    <p n='uses' v='javax.servlet.http,javax.servlet'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet'/>
    <p n='version' t='version' v='2.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.http'/>
    <p n='uses' v='javax.servlet'/>
    <p n='version' t='version' v='2.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.cert)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.security.cert
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.http)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.http ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.felix.http.jetty/1.0.1' presentationname='HTTP Service' symbolicname='org.apache.felix.http.jetty' uri='../org/apache/felix/org.apache.felix.http.jetty/1.0.1/org.apache.felix.http.jetty-1.0.1.jar' version='1.0.1'>
  <description>
    An implementation of the OSGi HTTP Service                
    
    
    
    
    
    
    
    
    
    
    
       
         
        using
     Jetty.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    769485
  </size>
  <capability name='service'>
    <p n='service' v='org.osgi.service.http.HttpService'/>
  </capability>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='HTTP Service'/>
    <p n='symbolicname' v='org.apache.felix.http.jetty'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.http'/>
    <p n='uses' v='javax.servlet.http,javax.servlet'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet'/>
    <p n='version' t='version' v='2.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.http'/>
    <p n='uses' v='javax.servlet'/>
    <p n='version' t='version' v='2.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.cert)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.security.cert
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.http)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.http ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.felix.javax.servlet/1.0.0' presentationname='Servlet 2.1 API' symbolicname='org.apache.felix.javax.servlet' uri='../org/apache/felix/javax.servlet/1.0.0/javax.servlet-1.0.0.jar' version='1.0.0'>
  <copyright>
    Copyright 1999,2005 The Apache Software Foundation
  </copyright>
  <description>
    Servlet 2.1 API
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    30450
  </size>
  <category id='servlet'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Servlet 2.1 API'/>
    <p n='symbolicname' v='org.apache.felix.javax.servlet'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.http'/>
    <p n='uses' v='javax.servlet'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
</resource>
<resource id='org.osgi.core/4.0.0' presentationname='OSGi R4 Core Bundle' symbolicname='org.osgi.core' uri='../org/apache/felix/org.osgi.core/1.0.1/org.osgi.core-1.0.1.jar' version='4.0.0'>
  <copyright>
    Copyright (c) OSGi Alliance (2000, 2006). All Rights Reserved.
  </copyright>
  <description>
    OSGi Service Platform Release 4 Core Interfaces and Classes.
  </description>
  <documentation>
    http://www.osgi.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    61073
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='OSGi R4 Core Bundle'/>
    <p n='symbolicname' v='org.osgi.core'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.permissionadmin'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.condpermadmin'/>
    <p n='uses' v='org.osgi.service.permissionadmin,org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url ;version=1.0.0
  </require>
</resource>
<resource id='org.osgi.core/4.1.0' presentationname='OSGi R4 Core Bundle' symbolicname='org.osgi.core' uri='../org/apache/felix/org.osgi.core/1.4.0/org.osgi.core-1.4.0.jar' version='4.1.0'>
  <copyright>
    Copyright (c) OSGi Alliance (2000, 2009). All Rights Reserved.
  </copyright>
  <description>
    OSGi Service Platform Release 4 Core Interfaces and Classes.
  </description>
  <documentation>
    http://www.osgi.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    100039
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='OSGi R4 Core Bundle'/>
    <p n='symbolicname' v='org.osgi.core'/>
    <p n='version' t='version' v='4.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.hooks.service'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.permissionadmin'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='uses' v='javax.security.auth.x500'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.launch'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.condpermadmin'/>
    <p n='uses' v='org.osgi.service.permissionadmin,org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url ;version=1.0.0
  </require>
</resource>
<resource id='org.osgi.core/4.0.0' presentationname='OSGi R4 Core Bundle' symbolicname='org.osgi.core' uri='../org/apache/felix/org.osgi.core/1.0.0/org.osgi.core-1.0.0.jar' version='4.0.0'>
  <copyright>
    Copyright (c) OSGi Alliance (2000, 2006). All Rights Reserved.
  </copyright>
  <description>
    OSGi Service Platform Release 4 Core Interfaces and Classes.
  </description>
  <documentation>
    http://www.osgi.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    60929
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='OSGi R4 Core Bundle'/>
    <p n='symbolicname' v='org.osgi.core'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.permissionadmin'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.condpermadmin'/>
    <p n='uses' v='org.osgi.service.permissionadmin,org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url ;version=1.0.0
  </require>
</resource>
<resource id='org.osgi.core/4.1.0' presentationname='OSGi R4 Core Bundle' symbolicname='org.osgi.core' uri='../org/apache/felix/org.osgi.core/1.2.0/org.osgi.core-1.2.0.jar' version='4.1.0'>
  <copyright>
    Copyright (c) OSGi Alliance (2000, 2007). All Rights Reserved.
  </copyright>
  <description>
    OSGi Service Platform Release 4 Core Interfaces and Classes.
  </description>
  <documentation>
    http://www.osgi.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    61378
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='OSGi R4 Core Bundle'/>
    <p n='symbolicname' v='org.osgi.core'/>
    <p n='version' t='version' v='4.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.permissionadmin'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.condpermadmin'/>
    <p n='uses' v='org.osgi.service.permissionadmin,org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.metatype/1.0.4' presentationname='Apache Felix Metatype Service' symbolicname='org.apache.felix.metatype' uri='../org/apache/felix/org.apache.felix.metatype/1.0.4/org.apache.felix.metatype-1.0.4.jar' version='1.0.4'>
  <description>
    Implementation of the OSGi Metatype Service Specification 1.1
  </description>
  <documentation>
    http://felix.apache.org/site/apache-felix-metatype-service.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    93990
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Metatype Service'/>
    <p n='symbolicname' v='org.apache.felix.metatype'/>
    <p n='version' t='version' v='1.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.metatype'/>
    <p n='uses' v='org.osgi.service.metatype,org.osgi.framework'/>
    <p n='version' t='version' v='1.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.metatype'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.metatype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.metatype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.metatype)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.metatype ;version=1.1.0
  </require>
</resource>
<resource id='org.apache.felix.metatype/1.0.0' presentationname='Apache Felix Metatype Service' symbolicname='org.apache.felix.metatype' uri='../org/apache/felix/org.apache.felix.metatype/1.0.0/org.apache.felix.metatype-1.0.0.jar' version='1.0.0'>
  <description>
    Implementation of the OSGi Metatype Service Specification 1.1
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    62257
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Metatype Service'/>
    <p n='symbolicname' v='org.apache.felix.metatype'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.metatype'/>
    <p n='uses' v='org.xmlpull.v1,org.osgi.framework,org.apache.felix.metatype.internal,org.apache.felix.metatype.internal.l10n,org.kxml2.io,org.osgi.service.metatype'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.metatype'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.metatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.metatype
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.metatype)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.metatype ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.felix.metatype/1.0.2' presentationname='Apache Felix Metatype Service' symbolicname='org.apache.felix.metatype' uri='../org/apache/felix/org.apache.felix.metatype/1.0.2/org.apache.felix.metatype-1.0.2.jar' version='1.0.2'>
  <description>
    Implementation of the OSGi Metatype Service Specification 1.1
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    62356
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Metatype Service'/>
    <p n='symbolicname' v='org.apache.felix.metatype'/>
    <p n='version' t='version' v='1.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.metatype'/>
    <p n='uses' v='org.osgi.framework,org.osgi.service.metatype'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.metatype'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.metatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.metatype
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.metatype)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.metatype ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.felix.log/1.0.0' presentationname='Apache Felix Log Service' symbolicname='org.apache.felix.log' uri='../org/apache/felix/org.apache.felix.log/1.0.0/org.apache.felix.log-1.0.0.jar' version='1.0.0'>
  <description>
    A simple implementation of the OSGi R4 Log service.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22291
  </size>
  <capability name='service'>
    <p n='service' v='org.osgi.service.log.LogService'/>
  </capability>
  <capability name='service'>
    <p n='service' v='org.osgi.service.log.LogReaderService'/>
  </capability>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Log Service'/>
    <p n='symbolicname' v='org.apache.felix.log'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
</resource>
<resource id='org.osgi.compendium/4.0.0' presentationname='OSGi R4 Compendium Bundle' symbolicname='org.osgi.compendium' uri='../org/apache/felix/org.osgi.compendium/1.0.0/org.osgi.compendium-1.0.0.jar' version='4.0.0'>
  <copyright>
    Copyright (c) OSGi Alliance (2000, 2005). All Rights Reserved.
  </copyright>
  <description>
    OSGi Service Platform Release 4 Compendium Interfaces and Classes.
  </description>
  <documentation>
    http://www.osgi.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    89662
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='OSGi R4 Compendium Bundle'/>
    <p n='symbolicname' v='org.osgi.compendium'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.io'/>
    <p n='uses' v='javax.microedition.io'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.http'/>
    <p n='uses' v='javax.servlet.http,javax.servlet'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.measurement'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.provisioning'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.component'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.xml'/>
    <p n='uses' v='javax.xml.parsers,org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.wireadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.event'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.upnp'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.device'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.prefs'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.position'/>
    <p n='uses' v='org.osgi.util.measurement'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.useradmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.metatype'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.microedition.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.microedition.io
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
</resource>
<resource id='org.osgi.compendium/4.1.0' presentationname='OSGi R4 Compendium Bundle' symbolicname='org.osgi.compendium' uri='../org/apache/felix/org.osgi.compendium/1.2.0/org.osgi.compendium-1.2.0.jar' version='4.1.0'>
  <copyright>
    Copyright (c) OSGi Alliance (2000, 2007). All Rights Reserved.
  </copyright>
  <description>
    OSGi Service Platform Release 4 Compendium Interfaces and Classes.
  </description>
  <documentation>
    http://www.osgi.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    155297
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='OSGi R4 Compendium Bundle'/>
    <p n='symbolicname' v='org.osgi.compendium'/>
    <p n='version' t='version' v='4.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.gsm'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.deploymentadmin.spi'/>
    <p n='uses' v='org.osgi.service.deploymentadmin'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='info.dmtree.spi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.component'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.monitor'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.xml'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.wireadmin'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='info.dmtree.registry'/>
    <p n='uses' v='info.dmtree.notification'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='info.dmtree.notification.spi'/>
    <p n='uses' v='info.dmtree.notification'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='info.dmtree.security'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.prefs'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.metatype'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.io'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.application'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.http'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.measurement'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.mobile'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.provisioning'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.deploymentadmin'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.event'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.upnp'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.device'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='version' t='version' v='1.3.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='info.dmtree.notification'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.position'/>
    <p n='uses' v='org.osgi.util.measurement'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.useradmin'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
</resource>
<resource id='org.osgi.compendium/4.0.0' presentationname='OSGi R4 Compendium Bundle' symbolicname='org.osgi.compendium' uri='../org/apache/felix/org.osgi.compendium/1.0.1/org.osgi.compendium-1.0.1.jar' version='4.0.0'>
  <copyright>
    Copyright (c) OSGi Alliance (2000, 2005). All Rights Reserved.
  </copyright>
  <description>
    OSGi Service Platform Release 4 Compendium Interfaces and Classes.
  </description>
  <documentation>
    http://www.osgi.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    89417
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='OSGi R4 Compendium Bundle'/>
    <p n='symbolicname' v='org.osgi.compendium'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.io'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.http'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.measurement'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.provisioning'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.component'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.xml'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.wireadmin'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.event'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.upnp'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.device'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='version' t='version' v='1.3.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.prefs'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.position'/>
    <p n='uses' v='org.osgi.util.measurement'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.useradmin'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.metatype'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
</resource>
<resource id='org.osgi.compendium/4.1.0' presentationname='OSGi R4 Compendium Bundle' symbolicname='org.osgi.compendium' uri='../org/apache/felix/org.osgi.compendium/1.4.0/org.osgi.compendium-1.4.0.jar' version='4.1.0'>
  <copyright>
    Copyright (c) OSGi Alliance (2000, 2009). All Rights Reserved.
  </copyright>
  <description>
    OSGi Service Platform Release 4 Compendium Interfaces and Classes.
  </description>
  <documentation>
    http://www.osgi.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    181851
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='OSGi R4 Compendium Bundle'/>
    <p n='symbolicname' v='org.osgi.compendium'/>
    <p n='version' t='version' v='4.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.gsm'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.deploymentadmin.spi'/>
    <p n='uses' v='org.osgi.service.deploymentadmin'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='info.dmtree.spi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.component'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.monitor'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.xml'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.wireadmin'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='info.dmtree.registry'/>
    <p n='uses' v='info.dmtree.notification'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='info.dmtree.notification.spi'/>
    <p n='uses' v='info.dmtree.notification'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='info.dmtree.security'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.prefs'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.metatype'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.io'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.application'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.http'/>
    <p n='version' t='version' v='1.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.measurement'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.mobile'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.provisioning'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.deploymentadmin'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.event'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.upnp'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.device'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='info.dmtree.notification'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.position'/>
    <p n='uses' v='org.osgi.util.measurement'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.useradmin'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.metadata/1.4.0' presentationname='iPOJO Metadata' symbolicname='org.apache.felix.org.apache.felix.ipojo.metadata' uri='../org/apache/felix/org.apache.felix.ipojo.metadata/1.4.0/org.apache.felix.ipojo.metadata-1.4.0.jar' version='1.4.0'>
  <description>
    iPOJO Metadata
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11708
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Metadata'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.metadata/0.8.0' presentationname='iPOJO Metadata' symbolicname='org.apache.felix.org.apache.felix.ipojo.metadata' uri='../org/apache/felix/org.apache.felix.ipojo.metadata/0.8.0/org.apache.felix.ipojo.metadata-0.8.0.jar' version='0.8.0'>
  <description>
    iPOJO Metadata
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11523
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Metadata'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.metadata/1.0.0' presentationname='iPOJO Metadata' symbolicname='org.apache.felix.org.apache.felix.ipojo.metadata' uri='../org/apache/felix/org.apache.felix.ipojo.metadata/1.0.0/org.apache.felix.ipojo.metadata-1.0.0.jar' version='1.0.0'>
  <description>
    iPOJO Metadata
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11420
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Metadata'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.metadata/1.2.0' presentationname='iPOJO Metadata' symbolicname='org.apache.felix.org.apache.felix.ipojo.metadata' uri='../org/apache/felix/org.apache.felix.ipojo.metadata/1.2.0/org.apache.felix.ipojo.metadata-1.2.0.jar' version='1.2.0'>
  <description>
    iPOJO Metadata
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11679
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Metadata'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
</resource>
<resource id='org.apache.felix.framework/1.6.0' presentationname='Apache Felix Framework' symbolicname='org.apache.felix.framework' uri='../org/apache/felix/org.apache.felix.framework/1.6.0/org.apache.felix.framework-1.6.0.jar' version='1.6.0'>
  <description>
    OSGi R4 framework implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    359748
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Framework'/>
    <p n='symbolicname' v='org.apache.felix.framework'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.hooks.service'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.launch'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.3'/>
  </capability>
</resource>
<resource id='org.apache.felix.org.apache.felix.framework/1.2.2' presentationname='Apache Felix Framework' symbolicname='org.apache.felix.org.apache.felix.framework' uri='../org/apache/felix/org.apache.felix.framework/1.2.2/org.apache.felix.framework-1.2.2.jar' version='1.2.2'>
  <description>
    OSGi R4 framework implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    347048
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Framework'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.framework'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.3'/>
  </capability>
</resource>
<resource id='org.apache.felix.org.apache.felix.framework/1.0.1' presentationname='Apache Felix Framework' symbolicname='org.apache.felix.org.apache.felix.framework' uri='../org/apache/felix/org.apache.felix.framework/1.0.1/org.apache.felix.framework-1.0.1.jar' version='1.0.1'>
  <description>
    OSGi R4 framework implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    324521
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Framework'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.framework'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='uses' v='org.apache.felix.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
</resource>
<resource id='org.apache.felix.framework/1.8.1' presentationname='Apache Felix Framework' symbolicname='org.apache.felix.framework' uri='../org/apache/felix/org.apache.felix.framework/1.8.1/org.apache.felix.framework-1.8.1.jar' version='1.8.1'>
  <description>
    OSGi R4 framework implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    359556
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Framework'/>
    <p n='symbolicname' v='org.apache.felix.framework'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.hooks.service'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.launch'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.3'/>
  </capability>
</resource>
<resource id='org.apache.felix.org.apache.felix.framework/1.2.1' presentationname='Apache Felix Framework' symbolicname='org.apache.felix.org.apache.felix.framework' uri='../org/apache/felix/org.apache.felix.framework/1.2.1/org.apache.felix.framework-1.2.1.jar' version='1.2.1'>
  <description>
    OSGi R4 framework implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    347243
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Framework'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.framework'/>
    <p n='version' t='version' v='1.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.3'/>
  </capability>
</resource>
<resource id='org.apache.felix.framework/1.4.0' presentationname='Apache Felix Framework' symbolicname='org.apache.felix.framework' uri='../org/apache/felix/org.apache.felix.framework/1.4.0/org.apache.felix.framework-1.4.0.jar' version='1.4.0'>
  <description>
    OSGi R4 framework implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    356705
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Framework'/>
    <p n='symbolicname' v='org.apache.felix.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.launch'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.3'/>
  </capability>
</resource>
<resource id='org.apache.felix.framework/2.0.0' presentationname='Apache Felix Framework' symbolicname='org.apache.felix.framework' uri='../org/apache/felix/org.apache.felix.framework/2.0.0/org.apache.felix.framework-2.0.0.jar' version='2.0.0'>
  <description>
    OSGi R4 framework implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    374610
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Framework'/>
    <p n='symbolicname' v='org.apache.felix.framework'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.hooks.service'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.launch'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
</resource>
<resource id='org.apache.felix.org.apache.felix.framework/1.0.0' presentationname='Apache Felix Framework' symbolicname='org.apache.felix.org.apache.felix.framework' uri='../org/apache/felix/org.apache.felix.framework/1.0.0/org.apache.felix.framework-1.0.0.jar' version='1.0.0'>
  <description>
    OSGi R4 framework implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    320272
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Framework'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='uses' v='org.apache.felix.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
</resource>
<resource id='org.apache.felix.framework/1.6.1' presentationname='Apache Felix Framework' symbolicname='org.apache.felix.framework' uri='../org/apache/felix/org.apache.felix.framework/1.6.1/org.apache.felix.framework-1.6.1.jar' version='1.6.1'>
  <description>
    OSGi R4 framework implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    357251
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Framework'/>
    <p n='symbolicname' v='org.apache.felix.framework'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.hooks.service'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.launch'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.3'/>
  </capability>
</resource>
<resource id='org.apache.felix.org.apache.felix.framework/1.0.3' presentationname='Apache Felix Framework' symbolicname='org.apache.felix.org.apache.felix.framework' uri='../org/apache/felix/org.apache.felix.framework/1.0.3/org.apache.felix.framework-1.0.3.jar' version='1.0.3'>
  <description>
    OSGi R4 framework implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    327663
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Framework'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.framework'/>
    <p n='version' t='version' v='1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='uses' v='org.apache.felix.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.2'/>
  </capability>
</resource>
<resource id='org.apache.felix.framework/1.4.1' presentationname='Apache Felix Framework' symbolicname='org.apache.felix.framework' uri='../org/apache/felix/org.apache.felix.framework/1.4.1/org.apache.felix.framework-1.4.1.jar' version='1.4.1'>
  <description>
    OSGi R4 framework implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    361268
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Framework'/>
    <p n='symbolicname' v='org.apache.felix.framework'/>
    <p n='version' t='version' v='1.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.hooks.service'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.launch'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.3'/>
  </capability>
</resource>
<resource id='org.apache.felix.org.apache.felix.framework/1.2.0' presentationname='Apache Felix Framework' symbolicname='org.apache.felix.org.apache.felix.framework' uri='../org/apache/felix/org.apache.felix.framework/1.2.0/org.apache.felix.framework-1.2.0.jar' version='1.2.0'>
  <description>
    OSGi R4 framework implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    347061
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Framework'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.3'/>
  </capability>
</resource>
<resource id='org.apache.felix.org.apache.felix.framework/1.0.4' presentationname='Apache Felix Framework' symbolicname='org.apache.felix.org.apache.felix.framework' uri='../org/apache/felix/org.apache.felix.framework/1.0.4/org.apache.felix.framework-1.0.4.jar' version='1.0.4'>
  <description>
    OSGi R4 framework implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    340187
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Framework'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.framework'/>
    <p n='version' t='version' v='1.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.2'/>
  </capability>
</resource>
<resource id='org.apache.felix.framework/1.8.0' presentationname='Apache Felix Framework' symbolicname='org.apache.felix.framework' uri='../org/apache/felix/org.apache.felix.framework/1.8.0/org.apache.felix.framework-1.8.0.jar' version='1.8.0'>
  <description>
    OSGi R4 framework implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    358592
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Framework'/>
    <p n='symbolicname' v='org.apache.felix.framework'/>
    <p n='version' t='version' v='1.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.hooks.service'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.launch'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.3'/>
  </capability>
</resource>
<resource id='org.apache.felix.dependencymanager/2.0.1' presentationname='Apache Felix Dependency Manager' symbolicname='org.apache.felix.dependencymanager' uri='../org/apache/felix/org.apache.felix.dependencymanager/2.0.1/org.apache.felix.dependencymanager-2.0.1.jar' version='2.0.1'>
  <description>
    A bundle that provides a run-time service dependency manager.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    56982
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Dependency Manager'/>
    <p n='symbolicname' v='org.apache.felix.dependencymanager'/>
    <p n='version' t='version' v='2.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.dependencymanager'/>
    <p n='uses' v='org.osgi.framework,org.osgi.service.cm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
</resource>
<resource id='org.apache.felix.configadmin/1.0.8' presentationname='Apache Felix Configuration Admin Service' symbolicname='org.apache.felix.configadmin' uri='../org/apache/felix/org.apache.felix.configadmin/1.0.8/org.apache.felix.configadmin-1.0.8.jar' version='1.0.8'>
  <description>
    Implementation of the OSGi Configuration Admin Service Specification
    
    
    
    
    
    
    
    
    
    
    
     1.2
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    73797
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Configuration Admin Service'/>
    <p n='symbolicname' v='org.apache.felix.configadmin'/>
    <p n='version' t='version' v='1.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.cm'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.cm.file'/>
    <p n='uses' v='org.apache.felix.cm,org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.cm)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.cm ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.cm.file)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.cm.file ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.configadmin/1.0.10' presentationname='Apache Felix Configuration Admin Service' symbolicname='org.apache.felix.configadmin' uri='../org/apache/felix/org.apache.felix.configadmin/1.0.10/org.apache.felix.configadmin-1.0.10.jar' version='1.0.10'>
  <description>
    Implementation of the OSGi Configuration Admin Service Specification
    
    
    
    
    
    
    
    
    
    
    
     1.2
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    74441
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Configuration Admin Service'/>
    <p n='symbolicname' v='org.apache.felix.configadmin'/>
    <p n='version' t='version' v='1.0.10'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.cm'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.cm.file'/>
    <p n='uses' v='org.apache.felix.cm,org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.cm)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.cm ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.cm.file)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.cm.file ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.configadmin/1.0.1' presentationname='Apache Felix Configuration Admin Service' symbolicname='org.apache.felix.configadmin' uri='../org/apache/felix/org.apache.felix.configadmin/1.0.1/org.apache.felix.configadmin-1.0.1.jar' version='1.0.1'>
  <description>
    Implementation of the OSGi Configuration Admin Service Specification
    
    
    
    
    
    
    
    
    
    
    
     1.2
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    65195
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Configuration Admin Service'/>
    <p n='symbolicname' v='org.apache.felix.configadmin'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.cm.file'/>
    <p n='uses' v='org.osgi.framework,org.apache.felix.cm'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.cm'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.cm)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.cm ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.cm.file)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.cm.file ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.felix.configadmin/1.2.0' presentationname='Apache Felix Configuration Admin Service' symbolicname='org.apache.felix.configadmin' uri='../org/apache/felix/org.apache.felix.configadmin/1.2.0/org.apache.felix.configadmin-1.2.0.jar' version='1.2.0'>
  <description>
    Implementation of the OSGi Configuration Admin Service Specification
    
    
    
    
    
    
    
    
    
    
    
     1.2
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    84408
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Configuration Admin Service'/>
    <p n='symbolicname' v='org.apache.felix.configadmin'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.cm'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.cm.file'/>
    <p n='uses' v='org.apache.felix.cm,org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.cm)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.cm ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.cm.file)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.cm.file ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.felix.configadmin/1.0.4' presentationname='Apache Felix Configuration Admin Service' symbolicname='org.apache.felix.configadmin' uri='../org/apache/felix/org.apache.felix.configadmin/1.0.4/org.apache.felix.configadmin-1.0.4.jar' version='1.0.4'>
  <description>
    Implementation of the OSGi Configuration Admin Service Specification
    
    
    
    
    
    
    
    
    
    
    
     1.2
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    73261
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Configuration Admin Service'/>
    <p n='symbolicname' v='org.apache.felix.configadmin'/>
    <p n='version' t='version' v='1.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.cm.file'/>
    <p n='uses' v='org.osgi.framework,org.apache.felix.cm'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.cm'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.cm)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.cm ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.cm.file)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.cm.file ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.configadmin/1.2.4' presentationname='Apache Felix Configuration Admin Service' symbolicname='org.apache.felix.configadmin' uri='../org/apache/felix/org.apache.felix.configadmin/1.2.4/org.apache.felix.configadmin-1.2.4.jar' version='1.2.4'>
  <description>
    Implementation of the OSGi Configuration Admin Service Specification
    
    
    
    
    
    
    
    
    
    
    
     1.2
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    85016
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Configuration Admin Service'/>
    <p n='symbolicname' v='org.apache.felix.configadmin'/>
    <p n='version' t='version' v='1.2.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.cm'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.cm.file'/>
    <p n='uses' v='org.apache.felix.cm,org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.cm)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.cm ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.cm.file)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.cm.file ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.felix.configadmin/1.0.0' presentationname='Apache Felix Configuration Admin Service' symbolicname='org.apache.felix.configadmin' uri='../org/apache/felix/org.apache.felix.configadmin/1.0.0/org.apache.felix.configadmin-1.0.0.jar' version='1.0.0'>
  <description>
    Implementation of the OSGi Configuration Admin Service Specification
    
    
    
    
    
    
    
    
    
    
    
     1.2
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    63220
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Configuration Admin Service'/>
    <p n='symbolicname' v='org.apache.felix.configadmin'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.cm.file'/>
    <p n='uses' v='org.osgi.framework,org.apache.felix.cm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.cm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.cm
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.cm.file)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.cm.file
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.junit4osgi/1.0.0' presentationname='Apache Felix iPOJO OSGi Junit Runner' symbolicname='org.apache.felix.ipojo.junit4osgi' uri='../org/apache/felix/org.apache.felix.ipojo.junit4osgi/1.0.0/org.apache.felix.ipojo.junit4osgi-1.0.0.jar' version='1.0.0'>
  <description>
    Apache Felix is an OSGi implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    158294
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO OSGi Junit Runner'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.junit4osgi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.swingui'/>
    <p n='uses' v='junit.extensions,junit.runner,junit.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.swingui.icons'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.runner'/>
    <p n='uses' v='junit.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.junit4osgi.helpers'/>
    <p n='uses' v='org.apache.felix.ipojo.junit4osgi,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo.parser,org.apache.felix.ipojo,org.osgi.service.cm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.junit4osgi'/>
    <p n='uses' v='org.osgi.service.packageadmin,org.osgi.framework,junit.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.extensions'/>
    <p n='uses' v='junit.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.textui'/>
    <p n='uses' v='junit.runner,junit.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.awtui'/>
    <p n='uses' v='junit.runner,junit.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.junit4osgi.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.junit4osgi.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.junit4osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.junit4osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.parser)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.parser ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.textui)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.textui
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.swingui)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.swingui
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.swingui.icons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.swingui.icons
  </require>
  <require extend='false' filter='(&amp;(package=junit.runner)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.runner
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=junit.awtui)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.awtui
  </require>
</resource>
<resource id='org.osgi.service.obr/1.0.0' presentationname='OSGi OBR Service API' symbolicname='org.osgi.service.obr' uri='../org/apache/felix/org.osgi.service.obr/1.0.2/org.osgi.service.obr-1.0.2.jar' version='1.0.0'>
  <copyright>
    Copyright (c) OSGi Alliance (2000, 2008). All Rights Reserved.
  </copyright>
  <description>
    OSGi OBR Service API
  </description>
  <documentation>
    http://www.osgi.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11515
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='OSGi OBR Service API'/>
    <p n='symbolicname' v='org.osgi.service.obr'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.obr'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.junit4osgi.swing-gui/1.0.0' presentationname='Apache Felix iPOJO OSGi Junit Runner - Swing Gui' symbolicname='org.apache.felix.ipojo.junit4osgi.swing-gui' uri='../org/apache/felix/org.apache.felix.ipojo.junit4osgi.swing-gui/1.0.0/org.apache.felix.ipojo.junit4osgi.swing-gui-1.0.0.jar' version='1.0.0'>
  <description>
    Apache Felix is an OSGi implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    30702
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO OSGi Junit Runner - Swing Gui'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.junit4osgi.swing-gui'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.junit4osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.junit4osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.table)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.table
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.border)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.border
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo/1.4.0' presentationname='Apache Felix iPOJO' symbolicname='org.apache.felix.ipojo' uri='../org/apache/felix/org.apache.felix.ipojo/1.4.0/org.apache.felix.ipojo-1.4.0.jar' version='1.4.0'>
  <description>
    iPOJO Core Framework
  </description>
  <documentation>
    http://felix.apache.org/site/apache-felix-ipojo.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    208117
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO'/>
    <p n='symbolicname' v='org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.util'/>
    <p n='uses' v='org.apache.felix.ipojo.context,org.osgi.service.log,org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo.parser,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.context'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.osgi.framework,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.dependency'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.metadata,org.apache.felix.ipojo.architecture,org.osgi.framework,org.apache.felix.ipojo.parser,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.architecture'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo,org.apache.felix.ipojo.handlers.configuration,org.osgi.service.cm'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.parser'/>
    <p n='uses' v='org.apache.felix.ipojo.metadata,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.context,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo.parser,org.apache.felix.ipojo.handlers.configuration,org.apache.felix.ipojo.handlers.providedservice,org.osgi.service.cm,org.apache.felix.ipojo.handlers.dependency'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.configuration'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.metadata,org.apache.felix.ipojo.architecture,org.osgi.framework,org.apache.felix.ipojo.parser,org.apache.felix.ipojo,org.osgi.service.cm,org.apache.felix.ipojo.handlers.providedservice'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.providedservice'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.handlers.dependency,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo.parser,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo/1.0.0' presentationname='iPOJO' symbolicname='org.apache.felix.ipojo' uri='../org/apache/felix/org.apache.felix.ipojo/1.0.0/org.apache.felix.ipojo-1.0.0.jar' version='1.0.0'>
  <description>
    iPOJO Core Framework
  </description>
  <documentation>
    http://felix.apache.org/site/apache-felix-ipojo.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    190398
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO'/>
    <p n='symbolicname' v='org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.util'/>
    <p n='uses' v='org.apache.felix.ipojo.context,org.osgi.service.log,org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo.parser,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='0.9.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.context'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.osgi.framework,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='0.9.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.dependency'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.metadata,org.apache.felix.ipojo.architecture,org.osgi.framework,org.apache.felix.ipojo.parser,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='0.9.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.architecture'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo,org.osgi.service.cm'/>
    <p n='version' t='version' v='0.9.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='0.9.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.parser'/>
    <p n='uses' v='org.apache.felix.ipojo.metadata,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='0.9.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.context,org.apache.felix.ipojo.metadata,org.apache.felix.ipojo.architecture,org.osgi.framework,org.apache.felix.ipojo.parser,org.osgi.service.cm'/>
    <p n='version' t='version' v='0.9.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.providedservice'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.handlers.dependency,org.apache.felix.ipojo.metadata,org.apache.felix.ipojo.architecture,org.osgi.framework,org.apache.felix.ipojo.parser,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='0.9.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo/0.8.0' presentationname='iPOJO' symbolicname='org.apache.felix.org.apache.felix.ipojo' uri='../org/apache/felix/org.apache.felix.ipojo/0.8.0/org.apache.felix.ipojo-0.8.0.jar' version='0.8.0'>
  <description>
    iPOJO Core Framework
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    181606
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.util'/>
    <p n='uses' v='org.osgi.service.log,org.apache.felix.ipojo.context,org.apache.felix.ipojo,org.osgi.framework,org.apache.felix.ipojo.metadata,org.apache.felix.ipojo.parser'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.architecture'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo,org.osgi.framework,org.osgi.service.cm,org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.context'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo,org.osgi.framework'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.dependency'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo,org.osgi.framework,org.apache.felix.ipojo.metadata,org.apache.felix.ipojo.parser'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo.context,org.osgi.framework,org.osgi.service.cm,org.apache.felix.ipojo.metadata,org.apache.felix.ipojo.parser'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.providedservice'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo.handlers.dependency,org.apache.felix.ipojo,org.osgi.framework,org.apache.felix.ipojo.metadata,org.apache.felix.ipojo.parser'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.parser'/>
    <p n='uses' v='org.apache.felix.ipojo,org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo/1.2.0' presentationname='Apache Felix iPOJO' symbolicname='org.apache.felix.ipojo' uri='../org/apache/felix/org.apache.felix.ipojo/1.2.0/org.apache.felix.ipojo-1.2.0.jar' version='1.2.0'>
  <description>
    iPOJO Core Framework
  </description>
  <documentation>
    http://felix.apache.org/site/apache-felix-ipojo.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    205519
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO'/>
    <p n='symbolicname' v='org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.util'/>
    <p n='uses' v='org.apache.felix.ipojo.context,org.osgi.service.log,org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo.parser,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.context'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.osgi.framework,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.dependency'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.metadata,org.apache.felix.ipojo.architecture,org.osgi.framework,org.apache.felix.ipojo.parser,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.architecture'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo,org.apache.felix.ipojo.handlers.configuration,org.osgi.service.cm'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.parser'/>
    <p n='uses' v='org.apache.felix.ipojo.metadata,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.context,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo.parser,org.apache.felix.ipojo.handlers.configuration,org.apache.felix.ipojo.handlers.providedservice,org.osgi.service.cm,org.apache.felix.ipojo.handlers.dependency'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.configuration'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo.parser,org.apache.felix.ipojo,org.osgi.service.cm,org.apache.felix.ipojo.handlers.providedservice'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.providedservice'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.handlers.dependency,org.apache.felix.ipojo.metadata,org.apache.felix.ipojo.architecture,org.osgi.framework,org.apache.felix.ipojo.parser,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.composite/1.0.0' presentationname='iPOJO Composite' symbolicname='org.apache.felix.org.apache.felix.ipojo.composite' uri='../org/apache/felix/org.apache.felix.ipojo.composite/1.0.0/org.apache.felix.ipojo.composite-1.0.0.jar' version='1.0.0'>
  <description>
    iPOJO Composititon Framework
  </description>
  <documentation>
    http://felix.apache.org/site/apache-felix-ipojo.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    252224
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Composite'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.composite'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.composite'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.context,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='0.9.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.context)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.context ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.parser)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.parser ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.composite/1.2.0' presentationname='Apache Felix iPOJO Composite' symbolicname='org.apache.felix.ipojo.composite' uri='../org/apache/felix/org.apache.felix.ipojo.composite/1.2.0/org.apache.felix.ipojo.composite-1.2.0.jar' version='1.2.0'>
  <description>
    iPOJO Composititon Framework
  </description>
  <documentation>
    http://felix.apache.org/site/apache-felix-ipojo.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    253447
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO Composite'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.composite'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.composite'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.context,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.context)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.context ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.parser)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.parser ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.composite/0.8.1' presentationname='iPOJO Composite' symbolicname='org.apache.felix.org.apache.felix.ipojo.composite' uri='../org/apache/felix/org.apache.felix.ipojo.composite/0.8.1/org.apache.felix.ipojo.composite-0.8.1.jar' version='0.8.1'>
  <description>
    iPOJO Composititon Framework
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    242368
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Composite'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.composite'/>
    <p n='version' t='version' v='0.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.composite'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo.context,org.apache.felix.ipojo,org.osgi.framework,org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.context)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.context ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.parser)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.parser ;version=0.8.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.composite/1.4.0' presentationname='Apache Felix iPOJO Composite' symbolicname='org.apache.felix.ipojo.composite' uri='../org/apache/felix/org.apache.felix.ipojo.composite/1.4.0/org.apache.felix.ipojo.composite-1.4.0.jar' version='1.4.0'>
  <description>
    iPOJO Composititon Framework
  </description>
  <documentation>
    http://felix.apache.org/site/ipojo-composition-tutorial.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    253908
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO Composite'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.composite'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.manipulation'/>
    <p n='uses' v='org.objectweb.asm.commons,org.apache.felix.ipojo.metadata,org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.tree.analysis'/>
    <p n='uses' v='org.objectweb.asm.tree,org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.commons'/>
    <p n='uses' v='org.objectweb.asm.tree,org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.tree'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.util'/>
    <p n='uses' v='org.objectweb.asm.tree.analysis,org.objectweb.asm.tree,org.objectweb.asm.signature,org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.signature'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.composite'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.apache.felix.ipojo.context,org.apache.felix.ipojo.architecture,org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.context)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.context ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.parser)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.parser ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.handler.extender.pattern/0.8.0' presentationname='Apache Felix iPOJO Extender Pattern Handler' symbolicname='org.apache.felix.ipojo.handler.extender.pattern' uri='../org/apache/felix/org.apache.felix.ipojo.handler.extender.pattern/0.8.0/org.apache.felix.ipojo.handler.extender.pattern-0.8.0.jar' version='0.8.0'>
  <description>
    Apache felix is an OSGi implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14717
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO Extender Pattern Handler'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.handler.extender.pattern'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
</resource>
<resource id='org.apache.felix.main/1.6.1' presentationname='Apache Felix' symbolicname='org.apache.felix.main' uri='../org/apache/felix/org.apache.felix.main/1.6.1/org.apache.felix.main-1.6.1.jar' version='1.6.1'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    365927
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix'/>
    <p n='symbolicname' v='org.apache.felix.main'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.hooks.service'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.launch'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.3'/>
  </capability>
</resource>
<resource id='org.apache.felix.org.apache.felix.main/1.0.0' presentationname='Apache Felix' symbolicname='org.apache.felix.org.apache.felix.main' uri='../org/apache/felix/org.apache.felix.main/1.0.0/org.apache.felix.main-1.0.0.jar' version='1.0.0'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    324733
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.main'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
</resource>
<resource id='org.apache.felix.org.apache.felix.main/1.0.4' presentationname='Apache Felix' symbolicname='org.apache.felix.org.apache.felix.main' uri='../org/apache/felix/org.apache.felix.main/1.0.4/org.apache.felix.main-1.0.4.jar' version='1.0.4'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    349938
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.main'/>
    <p n='version' t='version' v='1.0.4'/>
  </capability>
</resource>
<resource id='org.apache.felix.org.apache.felix.main/1.2.0' presentationname='Apache Felix' symbolicname='org.apache.felix.org.apache.felix.main' uri='../org/apache/felix/org.apache.felix.main/1.2.0/org.apache.felix.main-1.2.0.jar' version='1.2.0'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    356829
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.main'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
</resource>
<resource id='org.apache.felix.main/1.8.0' presentationname='Apache Felix' symbolicname='org.apache.felix.main' uri='../org/apache/felix/org.apache.felix.main/1.8.0/org.apache.felix.main-1.8.0.jar' version='1.8.0'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    367271
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix'/>
    <p n='symbolicname' v='org.apache.felix.main'/>
    <p n='version' t='version' v='1.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.hooks.service'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.launch'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.3'/>
  </capability>
</resource>
<resource id='org.apache.felix.main/1.4.1' presentationname='Apache Felix' symbolicname='org.apache.felix.main' uri='../org/apache/felix/org.apache.felix.main/1.4.1/org.apache.felix.main-1.4.1.jar' version='1.4.1'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    369804
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix'/>
    <p n='symbolicname' v='org.apache.felix.main'/>
    <p n='version' t='version' v='1.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.hooks.service'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.launch'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.3'/>
  </capability>
</resource>
<resource id='org.apache.felix.org.apache.felix.main/1.0.3' presentationname='Apache Felix' symbolicname='org.apache.felix.org.apache.felix.main' uri='../org/apache/felix/org.apache.felix.main/1.0.3/org.apache.felix.main-1.0.3.jar' version='1.0.3'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    337376
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.main'/>
    <p n='version' t='version' v='1.0.3'/>
  </capability>
</resource>
<resource id='org.apache.felix.org.apache.felix.main/1.0.1' presentationname='Apache Felix' symbolicname='org.apache.felix.org.apache.felix.main' uri='../org/apache/felix/org.apache.felix.main/1.0.1/org.apache.felix.main-1.0.1.jar' version='1.0.1'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    328994
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.main'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
</resource>
<resource id='org.apache.felix.org.apache.felix.main/1.2.2' presentationname='Apache Felix' symbolicname='org.apache.felix.org.apache.felix.main' uri='../org/apache/felix/org.apache.felix.main/1.2.2/org.apache.felix.main-1.2.2.jar' version='1.2.2'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    356815
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.main'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
</resource>
<resource id='org.apache.felix.main/1.6.0' presentationname='Apache Felix' symbolicname='org.apache.felix.main' uri='../org/apache/felix/org.apache.felix.main/1.6.0/org.apache.felix.main-1.6.0.jar' version='1.6.0'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    368418
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix'/>
    <p n='symbolicname' v='org.apache.felix.main'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.hooks.service'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.launch'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.3'/>
  </capability>
</resource>
<resource id='org.apache.felix.main/1.4.0' presentationname='Apache Felix' symbolicname='org.apache.felix.main' uri='../org/apache/felix/org.apache.felix.main/1.4.0/org.apache.felix.main-1.4.0.jar' version='1.4.0'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    365180
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix'/>
    <p n='symbolicname' v='org.apache.felix.main'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
</resource>
<resource id='org.apache.felix.main/2.0.0' presentationname='Apache Felix' symbolicname='org.apache.felix.main' uri='../org/apache/felix/org.apache.felix.main/2.0.0/org.apache.felix.main-2.0.0.jar' version='2.0.0'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    389149
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix'/>
    <p n='symbolicname' v='org.apache.felix.main'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.hooks.service'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.launch'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
</resource>
<resource id='org.apache.felix.main/1.8.1' presentationname='Apache Felix' symbolicname='org.apache.felix.main' uri='../org/apache/felix/org.apache.felix.main/1.8.1/org.apache.felix.main-1.8.1.jar' version='1.8.1'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    368237
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix'/>
    <p n='symbolicname' v='org.apache.felix.main'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.packageadmin'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.hooks.service'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.url'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.startlevel'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.framework.launch'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.util.tracker'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.3'/>
  </capability>
</resource>
<resource id='org.apache.felix.org.apache.felix.main/1.2.1' presentationname='Apache Felix' symbolicname='org.apache.felix.org.apache.felix.main' uri='../org/apache/felix/org.apache.felix.main/1.2.1/org.apache.felix.main-1.2.1.jar' version='1.2.1'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    357014
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.main'/>
    <p n='version' t='version' v='1.2.1'/>
  </capability>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.ant/1.4.0' presentationname='iPOJO Ant Task' symbolicname='org.apache.felix.org.apache.felix.ipojo.ant' uri='../org/apache/felix/org.apache.felix.ipojo.ant/1.4.0/org.apache.felix.ipojo.ant-1.4.0.jar' version='1.4.0'>
  <description>
    iPOJO Ant Task
  </description>
  <documentation>
    http://felix.apache.org/site/ipojo-ant-task.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1097939
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Ant Task'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.ant'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.task'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.task
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.jaxp.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.jaxp.datatype
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xinclude)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.xinclude
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xpointer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.xpointer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.xs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xs.datatypes)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.xs.datatypes
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.readers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.readers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.serialize)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.serialize
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.events)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.events
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ranges)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ranges
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.views)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.views
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.ant/0.8.1' presentationname='iPOJO Ant Task' symbolicname='org.apache.felix.org.apache.felix.ipojo.ant' uri='../org/apache/felix/org.apache.felix.ipojo.ant/0.8.1/org.apache.felix.ipojo.ant-0.8.1.jar' version='0.8.1'>
  <description>
    iPOJO Ant Task
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    788448
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Ant Task'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.ant'/>
    <p n='version' t='version' v='0.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.task'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.task
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.dom3)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.dom3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.dom3.as)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.dom3.as
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.signature)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.signature
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree.analysis)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree.analysis
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.ant/1.2.0' presentationname='iPOJO Ant Task' symbolicname='org.apache.felix.org.apache.felix.ipojo.ant' uri='../org/apache/felix/org.apache.felix.ipojo.ant/1.2.0/org.apache.felix.ipojo.ant-1.2.0.jar' version='1.2.0'>
  <description>
    iPOJO Ant Task
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    929539
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Ant Task'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.ant'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.task'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.task
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.serialize)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.serialize
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.signature)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.signature
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree.analysis)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree.analysis
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.events)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.events
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ranges)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ranges
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.ant/1.4.2' presentationname='iPOJO Ant Task' symbolicname='org.apache.felix.org.apache.felix.ipojo.ant' uri='../org/apache/felix/org.apache.felix.ipojo.ant/1.4.2/org.apache.felix.ipojo.ant-1.4.2.jar' version='1.4.2'>
  <description>
    iPOJO Ant Task
  </description>
  <documentation>
    http://felix.apache.org/site/ipojo-ant-task.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1098243
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Ant Task'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.ant'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.task'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.task
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.jaxp.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.jaxp.datatype
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xinclude)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.xinclude
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xpointer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.xpointer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.xs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xs.datatypes)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.xs.datatypes
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.readers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.readers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.serialize)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.serialize
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.events)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.events
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ranges)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ranges
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.views)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.views
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.ant/1.0.0' presentationname='iPOJO Ant Task' symbolicname='org.apache.felix.org.apache.felix.ipojo.ant' uri='../org/apache/felix/org.apache.felix.ipojo.ant/1.0.0/org.apache.felix.ipojo.ant-1.0.0.jar' version='1.0.0'>
  <description>
    iPOJO Ant Task
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    928292
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Ant Task'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.ant'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.task'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.task
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.serialize)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.serialize
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.signature)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.signature
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree.analysis)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree.analysis
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.events)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.events
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ranges)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ranges
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.felix.ipojo.api/1.4.0' presentationname='Apache Felix iPOJO API' symbolicname='org.apache.felix.ipojo.api' uri='../org/apache/felix/org.apache.felix.ipojo.api/1.4.0/org.apache.felix.ipojo.api-1.4.0.jar' version='1.4.0'>
  <description>
    iPOJO API used to definie component types and instances from
    
    
    
    
    
    
    
    
    
    
    
     Java
     code.
  </description>
  <documentation>
    http://felix.apache.org/site/apache-felix-ipojo-api.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    154275
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO API'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.api'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.commons'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.manipulation'/>
    <p n='uses' v='org.objectweb.asm.commons,org.apache.felix.ipojo.metadata,org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.api'/>
    <p n='uses' v='org.apache.felix.ipojo.manipulation,org.apache.felix.ipojo.handlers.dependency,org.apache.felix.ipojo.metadata,org.apache.felix.ipojo.architecture,org.osgi.framework,org.apache.felix.ipojo,org.apache.felix.ipojo.handlers.providedservice'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.manipulation.annotations'/>
    <p n='uses' v='org.objectweb.asm.commons,org.apache.felix.ipojo.metadata,org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.api.composite'/>
    <p n='uses' v='org.apache.felix.ipojo.metadata,org.osgi.framework,org.apache.felix.ipojo.api,org.apache.felix.ipojo.composite,org.apache.felix.ipojo'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.api.composite)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.api.composite
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.composite)(version&gt;=1.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.ipojo.composite ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.dependency)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.dependency ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.providedservice)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.providedservice
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.manipulation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.manipulation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.manipulation.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.manipulation.annotations
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.online.manipulator/1.4.2' presentationname='Apache Felix iPOJO URL Handler' symbolicname='org.apache.felix.ipojo.online.manipulator' uri='../org/apache/felix/org.apache.felix.ipojo.online.manipulator/1.4.2/org.apache.felix.ipojo.online.manipulator-1.4.2.jar' version='1.4.2'>
  <description>
    iPOJO online manipulator allowing install time manipulation
    
    
    
    
    
    
    
    
    
    
    
     of
     iPOJO
     bundle.
  </description>
  <documentation>
    http://felix.apache.org/site/apache-felix-ipojo-online-manipulator.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    147243
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO URL Handler'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.online.manipulator'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.commons'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.manipulation'/>
    <p n='uses' v='org.objectweb.asm.commons,org.apache.felix.ipojo.metadata,org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.manipulator'/>
    <p n='uses' v='org.xml.sax,org.apache.felix.ipojo.metadata,org.apache.felix.ipojo.manipulation.annotations,org.objectweb.asm,org.apache.felix.ipojo.manipulation,org.xml.sax.helpers,org.apache.felix.ipojo.xml.parser'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.xml.parser'/>
    <p n='uses' v='org.xml.sax,org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.manipulation.annotations'/>
    <p n='uses' v='org.objectweb.asm.commons,org.apache.felix.ipojo.metadata,org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.manipulator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.manipulator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.manipulation.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.manipulation.annotations
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.manipulation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.manipulation
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.xml.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.xml.parser
  </require>
</resource>
<resource id='org.apache.felix.ipojo.online.manipulator/1.4.0' presentationname='Apache Felix iPOJO URL Handler' symbolicname='org.apache.felix.ipojo.online.manipulator' uri='../org/apache/felix/org.apache.felix.ipojo.online.manipulator/1.4.0/org.apache.felix.ipojo.online.manipulator-1.4.0.jar' version='1.4.0'>
  <description>
    iPOJO online manipulator allowing install time manipulation
    
    
    
    
    
    
    
    
    
    
    
     of
     iPOJO
     bundle.
  </description>
  <documentation>
    http://felix.apache.org/site/apache-felix-ipojo-online-manipulator.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    146924
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO URL Handler'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.online.manipulator'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.commons'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.manipulation'/>
    <p n='uses' v='org.objectweb.asm.commons,org.apache.felix.ipojo.metadata,org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.manipulator'/>
    <p n='uses' v='org.xml.sax,org.apache.felix.ipojo.metadata,org.apache.felix.ipojo.manipulation.annotations,org.objectweb.asm,org.apache.felix.ipojo.manipulation,org.xml.sax.helpers,org.apache.felix.ipojo.xml.parser'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.xml.parser'/>
    <p n='uses' v='org.xml.sax,org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.manipulation.annotations'/>
    <p n='uses' v='org.objectweb.asm.commons,org.apache.felix.ipojo.metadata,org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.manipulator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.manipulator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.manipulation.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.manipulation.annotations
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.manipulation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.manipulation
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.xml.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.xml.parser
  </require>
</resource>
<resource id='org.apache.felix.ipojo.junit4osgi.felix-command/1.0.0' presentationname='Apache Felix iPOJO OSGi Junit Runner - Felix Command' symbolicname='org.apache.felix.ipojo.junit4osgi.felix-command' uri='../org/apache/felix/org.apache.felix.ipojo.junit4osgi.felix-command/1.0.0/org.apache.felix.ipojo.junit4osgi.felix-command-1.0.0.jar' version='1.0.0'>
  <description>
    Apache Felix is an OSGi implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11523
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO OSGi Junit Runner - Felix Command'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.junit4osgi.felix-command'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.junit4osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.junit4osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.upnp.extra/0.4.0' presentationname='Apache Felix UPnP Extra' symbolicname='org.apache.felix.upnp.extra' uri='../org/apache/felix/org.apache.felix.upnp.extra/0.4.0/org.apache.felix.upnp.extra-0.4.0.jar' version='0.4.0'>
  <description>
    A library used to extend the integration between UPnP and OSGi
    
    
    
    
    
    
    
    
    
    
    
     that
     is
     not part
     of
     the
     standard.
    
   
      Also
 
        services
 
       
    
     that
   
   
       allow
    
     to
     change
   
      the beahviour

        
     of the
 
        UPnP
     Base
    

         Driver
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16845
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix UPnP Extra'/>
    <p n='symbolicname' v='org.apache.felix.upnp.extra'/>
    <p n='version' t='version' v='0.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.upnp.extra.util'/>
    <p n='uses' v='org.osgi.service.upnp,org.osgi.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.upnp.extra.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.upnp.extra.util
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.upnp)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.upnp ;version=1.1.0
  </require>
</resource>
<resource id='ipojo.event.admin.handler.wbp/1.0.0' presentationname='Apache Felix iPOJO White Board Pattern Handler' symbolicname='ipojo.event.admin.handler.wbp' uri='../org/apache/felix/org.apache.felix.ipojo.handler.whiteboard/1.0.0/org.apache.felix.ipojo.handler.whiteboard-1.0.0.jar' version='1.0.0'>
  <description>
    iPOJO White-Board Pattern Handler
  </description>
  <documentation>
    http://felix.apache.org/site/white-board-pattern-handler.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12865
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO White Board Pattern Handler'/>
    <p n='symbolicname' v='ipojo.event.admin.handler.wbp'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='ipojo.event.admin.handler.wbp/1.2.0' presentationname='Apache Felix iPOJO White Board Pattern Handler' symbolicname='ipojo.event.admin.handler.wbp' uri='../org/apache/felix/org.apache.felix.ipojo.handler.whiteboard/1.2.0/org.apache.felix.ipojo.handler.whiteboard-1.2.0.jar' version='1.2.0'>
  <description>
    iPOJO White-Board Pattern Handler
  </description>
  <documentation>
    http://felix.apache.org/site/white-board-pattern-handler.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13074
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO White Board Pattern Handler'/>
    <p n='symbolicname' v='ipojo.event.admin.handler.wbp'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.handler.whiteboard/1.4.0' presentationname='Apache Felix iPOJO White Board Pattern Handler' symbolicname='org.apache.felix.ipojo.handler.whiteboard' uri='../org/apache/felix/org.apache.felix.ipojo.handler.whiteboard/1.4.0/org.apache.felix.ipojo.handler.whiteboard-1.4.0.jar' version='1.4.0'>
  <description>
    iPOJO White-Board Pattern Handler
  </description>
  <documentation>
    http://felix.apache.org/site/white-board-pattern-handler.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13161
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO White Board Pattern Handler'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.handler.whiteboard'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handler.wbp'/>
    <p n='uses' v='org.apache.felix.ipojo.util,org.osgi.framework,org.apache.felix.ipojo,org.apache.felix.ipojo.metadata'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handler.wbp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handler.wbp
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.annotations/1.4.0' presentationname='iPOJO Annotations' symbolicname='org.apache.felix.org.apache.felix.ipojo.annotations' uri='../org/apache/felix/org.apache.felix.ipojo.annotations/1.4.0/org.apache.felix.ipojo.annotations-1.4.0.jar' version='1.4.0'>
  <description>
    iPOJO Annotations
  </description>
  <documentation>
    http://felix.apache.org/site/how-to-use-ipojo-annotations.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19750
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Annotations'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.annotations'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.jmx'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handler.temporal'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.annotations'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.transaction'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.whiteboard'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.event'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.extender'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.annotations
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.extender)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.extender
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handler.temporal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handler.temporal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.jmx)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.jmx
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.whiteboard)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.whiteboard
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.annotations/1.2.0' presentationname='iPOJO Annotations' symbolicname='org.apache.felix.org.apache.felix.ipojo.annotations' uri='../org/apache/felix/org.apache.felix.ipojo.annotations/1.2.0/org.apache.felix.ipojo.annotations-1.2.0.jar' version='1.2.0'>
  <description>
    iPOJO Annotations
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18019
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Annotations'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.annotations'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.jmx'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handler.temporal'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.annotations'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.whiteboard'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handlers.event'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.extender'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.annotations
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.extender)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.extender
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handler.temporal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handler.temporal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.jmx)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.jmx
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.whiteboard)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.whiteboard
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.annotations/0.8.0' presentationname='iPOJO Annotations' symbolicname='org.apache.felix.org.apache.felix.ipojo.annotations' uri='../org/apache/felix/org.apache.felix.ipojo.annotations/0.8.0/org.apache.felix.ipojo.annotations-0.8.0.jar' version='0.8.0'>
  <description>
    iPOJO Annotations
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12674
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Annotations'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.annotations'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.annotations'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.annotations
  </require>
</resource>
<resource id='org.apache.felix.org.apache.felix.ipojo.annotations/1.0.0' presentationname='iPOJO Annotations' symbolicname='org.apache.felix.org.apache.felix.ipojo.annotations' uri='../org/apache/felix/org.apache.felix.ipojo.annotations/1.0.0/org.apache.felix.ipojo.annotations-1.0.0.jar' version='1.0.0'>
  <description>
    iPOJO Annotations
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13475
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Annotations'/>
    <p n='symbolicname' v='org.apache.felix.org.apache.felix.ipojo.annotations'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.handler.temporal'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.ipojo.annotations'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.annotations
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handler.temporal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handler.temporal
  </require>
</resource>
<resource id='ipojo.event.admin.handler.wbp/0.8.0' presentationname='Apache Felix iPOJO White Board Pattern Handler' symbolicname='ipojo.event.admin.handler.wbp' uri='../org/apache/felix/org.apache.felix.ipojo.handler.white.board.pattern/0.8.0/org.apache.felix.ipojo.handler.white.board.pattern-0.8.0.jar' version='0.8.0'>
  <description>
    Apache felix is an OSGi implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12968
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO White Board Pattern Handler'/>
    <p n='symbolicname' v='ipojo.event.admin.handler.wbp'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
</resource>
<resource id='org.apache.felix.ipojo.handler.jmx/1.4.0' presentationname='Apache Felix iPOJO JMX Handler' symbolicname='org.apache.felix.ipojo.handler.jmx' uri='../org/apache/felix/org.apache.felix.ipojo.handler.jmx/1.4.0/org.apache.felix.ipojo.handler.jmx-1.4.0.jar' version='1.4.0'>
  <description>
    iPOJO JMX Handler
  </description>
  <documentation>
    http://felix.apache.org/site/ipojo-jmx-handler.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    29563
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO JMX Handler'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.handler.jmx'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.parser)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.parser ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.handler.jmx/1.2.0' presentationname='Apache Felix iPOJO JMX Handler' symbolicname='org.apache.felix.ipojo.handler.jmx' uri='../org/apache/felix/org.apache.felix.ipojo.handler.jmx/1.2.0/org.apache.felix.ipojo.handler.jmx-1.2.0.jar' version='1.2.0'>
  <description>
    iPOJO JMX Handler
  </description>
  <documentation>
    http://felix.apache.org/site/ipojo-jmx-handler.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    29653
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO JMX Handler'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.handler.jmx'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.parser)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.parser ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.handler.jmx/1.0.0' presentationname='Apache Felix iPOJO JMX Handler' symbolicname='org.apache.felix.ipojo.handler.jmx' uri='../org/apache/felix/org.apache.felix.ipojo.handler.jmx/1.0.0/org.apache.felix.ipojo.handler.jmx-1.0.0.jar' version='1.0.0'>
  <description>
    iPOJO JMX Handler
  </description>
  <documentation>
    http://felix.apache.org/site/ipojo-jmx-handler.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    29263
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO JMX Handler'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.handler.jmx'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.util)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.util ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.parser)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.parser ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.arch/0.8.0' presentationname='iPOJO Arch Felix Command' symbolicname='org.apache.felix.ipojo.arch' uri='../org/apache/felix/org.apache.felix.ipojo.arch/0.8.0/org.apache.felix.ipojo.arch-0.8.0.jar' version='0.8.0'>
  <description>
    Apache felix is an OSGi implementation.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12593
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Arch Felix Command'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.arch'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
</resource>
<resource id='org.apache.felix.ipojo.arch/1.0.0' presentationname='iPOJO Arch Felix Command' symbolicname='org.apache.felix.ipojo.arch' uri='../org/apache/felix/org.apache.felix.ipojo.arch/1.0.0/org.apache.felix.ipojo.arch-1.0.0.jar' version='1.0.0'>
  <description>
    iPOJO Arch command for Felix
  </description>
  <documentation>
    http://felix.apache.org/site/architecture-handler.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12553
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='iPOJO Arch Felix Command'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.arch'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.arch/1.2.0' presentationname='Apache Felix iPOJO Arch Command' symbolicname='org.apache.felix.ipojo.arch' uri='../org/apache/felix/org.apache.felix.ipojo.arch/1.2.0/org.apache.felix.ipojo.arch-1.2.0.jar' version='1.2.0'>
  <description>
    iPOJO Arch command for Felix
  </description>
  <documentation>
    http://felix.apache.org/site/architecture-handler.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12917
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO Arch Command'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.arch'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.felix.ipojo.arch/1.4.0' presentationname='Apache Felix iPOJO Arch Command' symbolicname='org.apache.felix.ipojo.arch' uri='../org/apache/felix/org.apache.felix.ipojo.arch/1.4.0/org.apache.felix.ipojo.arch-1.4.0.jar' version='1.4.0'>
  <description>
    iPOJO Arch command for Felix
  </description>
  <documentation>
    http://felix.apache.org/site/ipojo-arch-command.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13101
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO Arch Command'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.arch'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.activemq.activemq-core/5.2.0' presentationname='activemq-core' symbolicname='org.apache.activemq.activemq-core' uri='../org/apache/activemq/activemq-core/5.2.0/activemq-core-5.2.0.jar' version='5.2.0'>
  <description>
    The ActiveMQ Message Broker and Client implementations
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2315826
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='activemq-core'/>
    <p n='symbolicname' v='org.apache.activemq.activemq-core'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.openwire.v3'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.wireformat'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.filter'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.commons.logging,org.w3c.dom.traversal,org.apache.activemq.util,javax.xml.parsers,org.apache.activemq.command,org.apache.xpath,org.apache.activemq.broker.region,org.springframework.beans.factory,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transaction'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.command,org.apache.activemq.store,org.apache.commons.logging,javax.transaction.xa'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.network.jms'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.util,javax.naming,org.apache.commons.logging,org.apache.activemq,javax.jms,org.springframework.jndi'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.openwire.tool'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.codehaus.jam'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.selector'/>
    <p n='uses' v='org.apache.activemq.filter,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.thread'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.usage'/>
    <p n='uses' v='org.apache.activemq.kaha,org.apache.activemq.store,org.apache.commons.logging,org.apache.activemq'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.jndi'/>
    <p n='uses' v='javax.naming,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq,javax.naming.spi,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.view'/>
    <p n='uses' v='org.apache.activemq.broker,javax.management,org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.broker.jmx,org.apache.commons.logging,org.apache.activemq.broker.region'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl'/>
    <p n='uses' v='org.apache.activemq.kaha.impl.container,org.apache.commons.logging,org.apache.activemq.kaha.impl.async,org.apache.activemq.kaha.impl.index,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.activemq.kaha.impl.data'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.reliable'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq.transport,org.apache.activemq.transport.udp'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.amq'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.activemq.filter,org.apache.activemq.transaction,org.apache.activemq.thread,org.apache.activemq.kaha.impl.async,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq.usage,org.apache.activemq.store.kahadaptor,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.store,org.apache.activemq.kaha.impl.index.hash'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,javax.management,org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.broker.jmx,org.apache.activemq.command,org.apache.activemq.transport.tcp'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.region'/>
    <p n='uses' v='org.apache.activemq.broker.region.policy,org.apache.activemq.filter,org.apache.activemq.transaction,org.apache.activemq.thread,org.apache.activemq.selector,org.apache.activemq.usage,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.broker,javax.management,org.apache.commons.logging,org.apache.activemq.management,org.apache.activemq.broker.region.group,org.apache.activemq.kaha,org.apache.activemq.command,org.apache.activemq.advisory,org.apache.activemq.store,org.apache.activemq.state,org.apache.activemq.broker.region.cursors,org.apache.activemq.security,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.peer'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.network,org.apache.activemq.util,org.apache.activemq.transport.vm,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.fanout'/>
    <p n='uses' v='org.apache.activemq.transport.discovery,org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.state,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker'/>
    <p n='uses' v='org.apache.activemq.network,org.apache.activemq.broker.region.policy,org.apache.activemq.filter,org.apache.activemq.transaction,org.apache.activemq.proxy,org.apache.activemq.network.jms,org.apache.activemq.thread,org.apache.activemq.usage,org.apache.activemq.transport.vm,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.broker.jmx,org.apache.activemq.store.amq,org.apache.activemq.broker.region,org.apache.activemq.transport,org.apache.activemq.transport.discovery,org.apache.activemq.broker.region.virtual,javax.management,org.apache.activemq.broker.cluster,org.apache.commons.logging,javax.transaction.xa,org.apache.activemq.broker.ft,org.apache.activemq.kaha,org.apache.activemq.store.memory,org.apache.activemq.advisory,org.apache.activemq.command,org.apache.activemq.store,org.apache.activemq.state,org.apache.activemq.transport.tcp,org.apache.activemq.security,javax.jms,javax.net.ssl'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.discovery'/>
    <p n='uses' v='org.apache.activemq.transport.failover,org.apache.activemq.util,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq.transport,org.apache.activemq'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.region.virtual'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.selector,org.apache.commons.logging,org.apache.activemq.broker.region,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.failover'/>
    <p n='uses' v='org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.state,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.jaas'/>
    <p n='uses' v='javax.naming.directory,javax.security.auth.login,org.apache.commons.logging,javax.security.auth.spi,javax.naming,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.stomp'/>
    <p n='uses' v='org.apache.activemq.broker,com.thoughtworks.xstream.io,org.apache.commons.logging,org.apache.activemq.wireformat,org.springframework.context,org.apache.activemq.xbean,com.thoughtworks.xstream.io.xml,org.apache.activemq.util,com.thoughtworks.xstream.io.json,com.thoughtworks.xstream,org.apache.activemq.command,org.springframework.beans,org.apache.activemq.state,org.apache.activemq.transport.tcp,org.apache.activemq.transport,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.cluster'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq.broker.region'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.openwire.v2'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.wireformat'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.logwriters'/>
    <p n='uses' v='org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.management'/>
    <p n='uses' v='org.apache.activemq.util,javax.management.j2ee.statistics,org.apache.commons.logging,org.apache.activemq,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.index'/>
    <p n='uses' v='org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.activemq.kaha.impl.data,org.apache.commons.logging'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.nio'/>
    <p n='uses' v='org.apache.activemq.wireformat,org.apache.activemq.util,org.apache.activemq.command,javax.net,org.apache.activemq.transport.tcp,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.blob'/>
    <p n='uses' v='org.apache.activemq.command,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.ft'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.commons.logging,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.broker.region,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.xbean'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.commons.logging,org.springframework.context,org.apache.xbean.spring.context,org.springframework.core.io,org.springframework.beans,org.springframework.util,org.springframework.beans.factory,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.mock'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.jdbc'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.commons.logging,org.apache.activemq.usage,org.apache.activemq.wireformat,org.apache.activemq,javax.sql,org.apache.activemq.util,org.apache.activemq.store.memory,org.apache.activemq.command,org.apache.derby.jdbc,org.apache.activemq.store,org.apache.activemq.store.jdbc.adapter'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.memory'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.store,org.apache.commons.logging,org.apache.activemq.usage'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.openwire.v1'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.wireformat'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.jmdns'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.advisory'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.commons.logging,org.apache.activemq.usage,org.apache.activemq.management,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.state,org.apache.activemq.broker.region,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.util'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.advisory,org.apache.activemq.command,org.apache.activemq.broker.region,org.springframework.beans.factory,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.store.journal,org.apache.activemq.command,org.apache.activemq.usage,org.springframework.beans.factory,org.apache.activemq'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.index.hash'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.kaha,org.apache.commons.logging,org.apache.activemq.kaha.impl.index'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.state'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.tcp'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,javax.net,org.apache.activemq.transport,javax.net.ssl'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.security'/>
    <p n='uses' v='org.apache.activemq.broker,javax.naming.directory,javax.security.auth.login,org.apache.activemq.jaas,org.apache.activemq.filter,org.apache.commons.logging,javax.naming,org.apache.activemq.command,org.apache.activemq.broker.region,javax.security.auth,javax.jms,javax.security.auth.callback'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.network'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.transport.discovery,javax.naming.directory,javax.management,org.apache.activemq.filter,org.apache.commons.logging,org.apache.activemq,javax.naming.event,javax.naming,org.apache.activemq.util,org.apache.activemq.broker.jmx,org.apache.activemq.advisory,org.apache.activemq.command,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.openwire'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.wireformat'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.region.policy'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.filter,org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq.usage,org.apache.activemq,org.apache.activemq.broker.region.group,org.apache.activemq.memory.list,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.broker.region,org.apache.activemq.broker.region.cursors,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.proxy'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq.transport,org.apache.activemq'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.memory.buffer'/>
    <p n='uses' v='org.apache.activemq.command,org.apache.activemq.broker.region'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.wireformat'/>
    <p n='uses' v='org.apache.activemq.util'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.vm'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.spring'/>
    <p n='uses' v='org.apache.activemq.broker,org.springframework.core.io,org.springframework.beans.factory,org.apache.activemq,javax.net.ssl'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq'/>
    <p n='uses' v='org.apache.activemq.filter,org.apache.activemq.transaction,org.apache.activemq.thread,org.apache.activemq.selector,org.apache.activemq.usage,org.apache.activemq.jndi,org.apache.activemq.util,org.apache.activemq.transport,org.apache.activemq.broker.region,org.apache.commons.logging,javax.transaction.xa,org.apache.activemq.management,org.apache.activemq.blob,org.apache.activemq.command,org.apache.activemq.advisory,org.apache.activemq.state,org.apache.activemq.transport.tcp,javax.jms,javax.net.ssl'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.util'/>
    <p n='uses' v='com.thoughtworks.xstream.converters,org.apache.activemq,org.springframework.beans.propertyeditors,org.apache.activemq.transport,org.springframework.beans.factory,org.apache.activemq.broker,org.apache.commons.logging,com.thoughtworks.xstream.annotations,com.thoughtworks.xstream,org.apache.activemq.command,org.apache.activemq.store,org.apache.activemq.state,org.springframework.util,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.journal'/>
    <p n='uses' v='org.apache.activeio.journal.active,org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.activemq.filter,org.apache.activemq.transaction,org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq.usage,org.apache.activeio.journal,javax.sql,org.apache.activemq.util,org.apache.activemq.store.jdbc,org.apache.activemq.command,org.apache.activemq.store,org.apache.activeio.packet'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.data'/>
    <p n='uses' v='org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.commons.logging,org.apache.activemq.kaha.impl.index'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.jmx'/>
    <p n='uses' v='org.apache.activemq.network,org.apache.activemq.filter,org.apache.activemq.proxy,org.apache.activemq.network.jms,org.apache.activemq.selector,org.apache.activemq.thread,org.apache.activemq.usage,javax.management.openmbean,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.transport,org.apache.activemq.broker.region,org.apache.activemq.broker,javax.management,org.apache.commons.logging,org.apache.activemq.management,org.apache.activemq.broker.ft,javax.management.remote,org.apache.activemq.command,org.apache.activemq.store,org.apache.activemq.broker.region.cursors,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.index.tree'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.kaha,org.apache.commons.logging,org.apache.activemq.kaha.impl.index'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.multicast'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq.transport,org.apache.activemq.transport.udp'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.plugin'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq.broker.region'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.container'/>
    <p n='uses' v='org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.activemq.kaha.impl.index.hash,org.apache.commons.logging,org.apache.activemq.kaha.impl.index'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.async'/>
    <p n='uses' v='org.apache.activemq.thread,org.apache.commons.logging,org.apache.activeio.journal,org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.activemq.kaha.impl.data,org.apache.activeio.packet'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.udp'/>
    <p n='uses' v='org.apache.activemq.openwire,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.transport.reliable,org.apache.activemq.command,org.apache.activemq.transport.tcp,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.region.group'/>
    <p n='uses' v='org.apache.activemq.command'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.memory.list'/>
    <p n='uses' v='org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.memory.buffer,org.apache.commons.logging,org.apache.activemq.broker.region'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.kahadaptor'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.commons.logging,org.apache.activemq.kaha.impl.async,org.apache.activemq.usage,org.apache.activemq.wireformat,org.apache.activemq.kaha.impl.index,org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.activemq.store.amq,org.apache.activemq.command,org.apache.activemq.store,org.apache.activemq.kaha.impl.index.hash'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.discovery.simple'/>
    <p n='uses' v='org.apache.activemq.transport.discovery,org.apache.activemq.util,org.apache.activemq.command,org.apache.commons.logging'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha'/>
    <p n='uses' v='org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.command,org.apache.activemq.wireformat'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.command'/>
    <p n='uses' v='org.apache.activemq.filter,org.apache.commons.logging,javax.transaction.xa,org.apache.activemq.usage,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.blob,org.apache.activemq.jndi,org.apache.activemq.util,org.apache.activemq.state,org.apache.activemq.broker.region,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.activemq.apache.org.schema'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.discovery.multicast'/>
    <p n='uses' v='org.apache.activemq.transport.discovery,org.apache.activemq.util,org.apache.activemq.command,org.apache.commons.logging'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.region.cursors'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.activemq.filter,org.apache.commons.logging,org.apache.activemq.usage,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.kaha,org.apache.activemq.advisory,org.apache.activemq.command,org.apache.activemq.store,org.apache.activemq.broker.region'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.discovery.rendezvous'/>
    <p n='uses' v='org.apache.activemq.transport.discovery,org.apache.commons.logging,org.apache.activemq.util,org.apache.activemq.jmdns,org.apache.activemq.command,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.jdbc.adapter'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.store.jdbc,org.apache.activemq.command,org.apache.commons.logging,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.memory'/>
    <p n='uses' v='org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq.usage'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.activemq.apache.org.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.activemq.apache.org.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.annotations
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.converters
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.json)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io.json
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.j2ee.statistics)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.j2ee.statistics
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.openmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.openmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.directory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.directory
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.event
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.journal)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activeio.journal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.journal.active)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activeio.journal.active
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.packet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activeio.packet
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.advisory)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.advisory ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.blob)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.blob ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.cluster)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.cluster ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.ft)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.ft ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.jmx)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.jmx ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.region)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.region ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.region.cursors)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.region.cursors ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.region.group)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.region.group ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.region.policy)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.region.policy ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.region.virtual)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.region.virtual ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.util)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.util ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.view)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.view ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.command)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.command ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.filter)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.filter ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.jaas)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.jaas ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.jmdns)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.jmdns ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.jndi)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.jndi ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.async)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.async ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.container)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.container ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.data)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.data ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.index)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.index ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.index.hash)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.index.hash ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.index.tree)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.index.tree ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.management)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.management ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.memory)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.memory ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.memory.buffer)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.memory.buffer ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.memory.list)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.memory.list ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.network)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.network ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.network.jms)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.network.jms ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.openwire)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.openwire ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.openwire.tool)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.openwire.tool ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.openwire.v1)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.openwire.v1 ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.openwire.v2)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.openwire.v2 ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.openwire.v3)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.openwire.v3 ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.plugin)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.plugin ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.proxy)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.proxy ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.security)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.security ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.selector)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.selector ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.spring)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.spring ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.state)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.state ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.amq)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.amq ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.jdbc)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.jdbc ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.jdbc.adapter)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.jdbc.adapter ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.journal)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.journal ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.kahadaptor)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.kahadaptor ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.memory)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.memory ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.thread)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.thread ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transaction)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transaction ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.discovery)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.discovery ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.discovery.multicast)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.discovery.multicast
    
    
    
    
    
    
    
    
    
    
    
     ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.discovery.rendezvous)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.discovery.rendezvous
    
    
    
    
    
    
    
    
    
    
    
     ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.discovery.simple)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.discovery.simple
    
    
    
    
    
    
    
    
    
    
    
     ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.failover)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.failover ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.fanout)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.fanout ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.logwriters)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.logwriters ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.mock)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.mock ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.multicast)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.multicast ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.nio)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.nio ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.peer)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.peer ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.reliable)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.reliable ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.stomp)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.stomp ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.tcp)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.tcp ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.udp)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.udp ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.vm)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.vm ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.usage)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.usage ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.util)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.util ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.wireformat)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.wireformat ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.xbean)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.xbean ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.derby.jdbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.derby.jdbc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context)(version&gt;=3.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xbean.spring.context ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.impl)(version&gt;=3.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xbean.spring.context.impl ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jam)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jam
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.propertyeditors)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.propertyeditors
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.w3c.dom.traversal
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.activemq.activemq-core/5.1.0' presentationname='activemq-core' symbolicname='org.apache.activemq.activemq-core' uri='../org/apache/activemq/activemq-core/5.1.0/activemq-core-5.1.0.jar' version='5.1.0'>
  <description>
    The ActiveMQ Message Broker and Client implementations
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2315247
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='activemq-core'/>
    <p n='symbolicname' v='org.apache.activemq.activemq-core'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.pool'/>
    <p n='uses' v='org.apache.commons.pool.impl,org.apache.commons.logging,javax.transaction.xa,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.advisory,org.apache.commons.pool,javax.transaction,org.apache.activemq.transport,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.filter'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.commons.logging,org.w3c.dom.traversal,org.apache.activemq.util,javax.xml.parsers,org.apache.activemq.command,org.apache.xpath,org.apache.activemq.broker.region,org.springframework.beans.factory,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.openwire.v3'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.wireformat'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transaction'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.command,org.apache.activemq.store,org.apache.commons.logging,javax.transaction.xa'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.network.jms'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.util,javax.naming,org.apache.commons.logging,org.apache.activemq,javax.jms,org.springframework.jndi'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.openwire.tool'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.codehaus.jam'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.selector'/>
    <p n='uses' v='org.apache.activemq.filter,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.thread'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.usage'/>
    <p n='uses' v='org.apache.activemq.kaha,org.apache.activemq.store,org.apache.commons.logging,org.apache.activemq'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.jndi'/>
    <p n='uses' v='javax.naming,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq,javax.naming.spi,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.view'/>
    <p n='uses' v='org.apache.activemq.broker,javax.management,org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.broker.jmx,org.apache.commons.logging,org.apache.activemq.broker.region'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl'/>
    <p n='uses' v='org.apache.activemq.kaha.impl.container,org.apache.commons.logging,org.apache.activemq.kaha.impl.async,org.apache.activemq.kaha.impl.index,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.activemq.kaha.impl.data'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.reliable'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq.transport,org.apache.activemq.transport.udp'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.amq'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.activemq.filter,org.apache.activemq.transaction,org.apache.activemq.thread,org.apache.activemq.kaha.impl.async,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq.usage,org.apache.activemq.store.kahadaptor,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.store,org.apache.activemq.kaha.impl.index.hash'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,javax.management,org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.broker.jmx,org.apache.activemq.command'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.region'/>
    <p n='uses' v='org.apache.activemq.broker.region.policy,org.apache.activemq.filter,org.apache.activemq.transaction,org.apache.activemq.thread,org.apache.activemq.selector,org.apache.activemq.usage,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.broker,javax.management,org.apache.commons.logging,org.apache.activemq.management,org.apache.activemq.broker.region.group,org.apache.activemq.kaha,org.apache.activemq.command,org.apache.activemq.advisory,org.apache.activemq.store,org.apache.activemq.state,org.apache.activemq.broker.region.cursors,javax.jms,org.apache.activemq.security'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.peer'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.network,org.apache.activemq.util,org.apache.activemq.transport.vm,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.fanout'/>
    <p n='uses' v='org.apache.activemq.transport.discovery,org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.state,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker'/>
    <p n='uses' v='org.apache.activemq.network,org.apache.activemq.broker.region.policy,org.apache.activemq.filter,org.apache.activemq.transaction,org.apache.activemq.proxy,org.apache.activemq.network.jms,org.apache.activemq.thread,org.apache.activemq.usage,org.apache.activemq.transport.vm,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.store.amq,org.apache.activemq.broker.jmx,org.apache.activemq.broker.region,org.apache.activemq.transport,org.apache.activemq.transport.discovery,org.apache.activemq.broker.region.virtual,javax.management,org.apache.activemq.broker.cluster,org.apache.commons.logging,javax.transaction.xa,org.apache.activemq.broker.ft,org.apache.activemq.kaha,org.apache.activemq.store.memory,org.apache.activemq.advisory,org.apache.activemq.command,org.apache.activemq.store,org.apache.activemq.state,org.apache.activemq.transport.tcp,javax.jms,org.apache.activemq.security,javax.net.ssl'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.discovery'/>
    <p n='uses' v='org.apache.activemq.transport.failover,org.apache.activemq.util,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq.transport,org.apache.activemq'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.region.virtual'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.selector,org.apache.commons.logging,org.apache.activemq.broker.region,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.failover'/>
    <p n='uses' v='org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.state,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.jaas'/>
    <p n='uses' v='javax.naming.directory,javax.security.auth.login,org.apache.commons.logging,javax.security.auth.spi,javax.naming,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.stomp'/>
    <p n='uses' v='org.apache.activemq.broker,com.thoughtworks.xstream.io,org.apache.commons.logging,org.apache.activemq.wireformat,org.springframework.context,org.apache.activemq.xbean,com.thoughtworks.xstream.io.xml,org.apache.activemq.util,com.thoughtworks.xstream,com.thoughtworks.xstream.io.json,org.apache.activemq.command,org.springframework.beans,org.apache.activemq.state,org.apache.activemq.transport.tcp,org.apache.activemq.transport,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.camel.component'/>
    <p n='uses' v='org.apache.camel.component.jms,org.apache.activemq.kaha.impl.async,org.apache.commons.logging,org.apache.activemq.spring,org.apache.activemq,org.apache.activemq.util,org.apache.camel,org.apache.activemq.command,org.apache.activemq.advisory,org.apache.camel.util,org.apache.camel.impl,org.springframework.beans.factory,org.springframework.jms.connection,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.cluster'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq.broker.region'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.openwire.v2'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.wireformat'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.logwriters'/>
    <p n='uses' v='org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.management'/>
    <p n='uses' v='org.apache.activemq.util,javax.management.j2ee.statistics,org.apache.commons.logging,org.apache.activemq,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.index'/>
    <p n='uses' v='org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.activemq.kaha.impl.data,org.apache.commons.logging'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.nio'/>
    <p n='uses' v='org.apache.activemq.wireformat,org.apache.activemq.util,org.apache.activemq.command,javax.net,org.apache.activemq.transport.tcp,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.blob'/>
    <p n='uses' v='org.apache.activemq.command,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.ft'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.commons.logging,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.broker.region,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.xbean'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.context,org.springframework.core.io,org.springframework.beans,org.springframework.util,org.springframework.beans.factory,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.mock'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.camel.converter'/>
    <p n='uses' v='org.apache.activemq.command,org.apache.camel,org.apache.camel.component.jms,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.jdbc'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.commons.logging,org.apache.activemq.usage,org.apache.activemq.wireformat,org.apache.activemq,javax.sql,org.apache.activemq.util,org.apache.activemq.store.memory,org.apache.activemq.command,org.apache.derby.jdbc,org.apache.activemq.store,org.apache.activemq.store.jdbc.adapter'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.memory'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.store,org.apache.commons.logging,org.apache.activemq.usage'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.jmdns'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.advisory'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.commons.logging,org.apache.activemq.management,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.state,org.apache.activemq.broker.region,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.util'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.advisory,org.apache.activemq.command,org.apache.activemq.broker.region,org.springframework.beans.factory,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.openwire.v1'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.wireformat'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.store.journal,org.apache.activemq.command,org.apache.activemq.usage,org.springframework.beans.factory,org.apache.activemq'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.index.hash'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.kaha,org.apache.commons.logging,org.apache.activemq.kaha.impl.index'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.state'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.tcp'/>
    <p n='uses' v='org.apache.activemq.openwire,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,javax.net,org.apache.activemq.transport,javax.net.ssl'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.security'/>
    <p n='uses' v='org.apache.activemq.broker,javax.naming.directory,javax.security.auth.login,org.apache.activemq.jaas,org.apache.activemq.filter,org.apache.commons.logging,javax.naming,org.apache.activemq.command,org.apache.activemq.broker.region,javax.security.auth,javax.jms,javax.security.auth.callback'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.network'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.transport.discovery,javax.naming.directory,javax.management,org.apache.activemq.filter,org.apache.commons.logging,org.apache.activemq,javax.naming.event,javax.naming,org.apache.activemq.util,org.apache.activemq.broker.jmx,org.apache.activemq.advisory,org.apache.activemq.command,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.region.policy'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.filter,org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq.usage,org.apache.activemq,org.apache.activemq.broker.region.group,org.apache.activemq.memory.list,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.broker.region,org.apache.activemq.broker.region.cursors,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.openwire'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.wireformat'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.proxy'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq.transport,org.apache.activemq'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.memory.buffer'/>
    <p n='uses' v='org.apache.activemq.command,org.apache.activemq.broker.region'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.wireformat'/>
    <p n='uses' v='org.apache.activemq.util'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.vm'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.spring'/>
    <p n='uses' v='org.springframework.beans.factory,org.apache.activemq'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq'/>
    <p n='uses' v='org.apache.activemq.filter,org.apache.activemq.transaction,org.apache.activemq.thread,org.apache.activemq.selector,org.apache.activemq.usage,org.apache.activemq.jndi,org.apache.activemq.util,org.apache.activemq.transport,org.apache.activemq.broker.region,org.apache.commons.logging,javax.transaction.xa,org.apache.activemq.management,org.apache.activemq.blob,org.apache.activemq.command,org.apache.activemq.advisory,org.apache.activemq.state,org.apache.activemq.transport.tcp,javax.jms,javax.net.ssl'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.util'/>
    <p n='uses' v='com.thoughtworks.xstream.converters,org.apache.activemq,org.springframework.beans.propertyeditors,org.apache.activemq.transport,org.springframework.beans.factory,org.apache.activemq.broker,org.apache.commons.logging,com.thoughtworks.xstream.annotations,com.thoughtworks.xstream,org.apache.activemq.command,org.apache.activemq.store,org.apache.activemq.state,org.springframework.util,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.journal'/>
    <p n='uses' v='org.apache.activeio.journal.active,org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.activemq.filter,org.apache.activemq.transaction,org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq.usage,org.apache.activeio.journal,javax.sql,org.apache.activemq.util,org.apache.activemq.store.jdbc,org.apache.activemq.command,org.apache.activemq.store,org.apache.activeio.packet'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.data'/>
    <p n='uses' v='org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.commons.logging,org.apache.activemq.kaha.impl.index'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.jmx'/>
    <p n='uses' v='org.apache.activemq.network,org.apache.activemq.filter,org.apache.activemq.proxy,org.apache.activemq.network.jms,org.apache.activemq.selector,org.apache.activemq.thread,org.apache.activemq.usage,javax.management.openmbean,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.transport,org.apache.activemq.broker.region,org.apache.activemq.broker,javax.management,org.apache.commons.logging,org.apache.activemq.management,org.apache.activemq.broker.ft,javax.management.remote,org.apache.activemq.command,org.apache.activemq.store,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.index.tree'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.kaha,org.apache.commons.logging,org.apache.activemq.kaha.impl.index'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.camel'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.camel,org.apache.camel.component.jms,org.apache.camel.util,org.apache.activemq.management,org.apache.activemq.spring,org.apache.activemq.transport,org.apache.activemq,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.multicast'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq.transport,org.apache.activemq.transport.udp'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.container'/>
    <p n='uses' v='org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.activemq.kaha.impl.index.hash,org.apache.commons.logging,org.apache.activemq.kaha.impl.index'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.async'/>
    <p n='uses' v='org.apache.activemq.thread,org.apache.commons.logging,org.apache.activeio.journal,org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.activemq.kaha.impl.data,org.apache.activeio.packet'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.udp'/>
    <p n='uses' v='org.apache.activemq.openwire,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.transport.reliable,org.apache.activemq.command,org.apache.activemq.transport.tcp,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.region.group'/>
    <p n='uses' v='org.apache.activemq.command'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.memory.list'/>
    <p n='uses' v='org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.memory.buffer,org.apache.commons.logging,org.apache.activemq.broker.region'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.kahadaptor'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.commons.logging,org.apache.activemq.kaha.impl.async,org.apache.activemq.usage,org.apache.activemq.wireformat,org.apache.activemq.kaha.impl.index,org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.activemq.store.amq,org.apache.activemq.command,org.apache.activemq.store,org.apache.activemq.kaha.impl.index.hash'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.discovery.simple'/>
    <p n='uses' v='org.apache.activemq.transport.discovery,org.apache.activemq.util,org.apache.activemq.command,org.apache.commons.logging'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha'/>
    <p n='uses' v='org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.command,org.apache.activemq.wireformat'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.command'/>
    <p n='uses' v='org.apache.activemq.filter,org.apache.commons.logging,javax.transaction.xa,org.apache.activemq.usage,org.apache.activemq.wireformat,org.apache.activemq.blob,org.apache.activemq,org.apache.activemq.jndi,org.apache.activemq.util,org.apache.activemq.state,org.apache.activemq.broker.region,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.activemq.apache.org.schema'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.discovery.multicast'/>
    <p n='uses' v='org.apache.activemq.transport.discovery,org.apache.activemq.util,org.apache.activemq.command,org.apache.commons.logging'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.region.cursors'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.activemq.filter,org.apache.commons.logging,org.apache.activemq.usage,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.kaha,org.apache.activemq.advisory,org.apache.activemq.command,org.apache.activemq.store,org.apache.activemq.broker.region'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.discovery.rendezvous'/>
    <p n='uses' v='org.apache.activemq.transport.discovery,org.apache.commons.logging,org.apache.activemq.util,org.apache.activemq.jmdns,org.apache.activemq.command,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.jdbc.adapter'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.store.jdbc,org.apache.activemq.command,org.apache.commons.logging,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.memory'/>
    <p n='uses' v='org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq.usage'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.activemq.apache.org.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.activemq.apache.org.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.annotations
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.converters
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.json)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io.json
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.j2ee.statistics)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.j2ee.statistics
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.openmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.openmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.directory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.directory
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.event
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.journal)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activeio.journal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.journal.active)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activeio.journal.active
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.packet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activeio.packet
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.advisory)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.advisory ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.blob)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.blob ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.cluster)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.cluster ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.ft)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.ft ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.jmx)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.jmx ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.region)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.region ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.region.cursors)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.region.cursors ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.region.group)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.region.group ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.region.policy)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.region.policy ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.region.virtual)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.region.virtual ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.util)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.util ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.view)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.view ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.camel)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.camel ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.camel.component)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.camel.component ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.camel.converter)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.camel.converter ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.command)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.command ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.filter)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.filter ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.jaas)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.jaas ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.jmdns)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.jmdns ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.jndi)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.jndi ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.async)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.async ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.container)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.container ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.data)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.data ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.index)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.index ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.index.hash)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.index.hash ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.index.tree)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.index.tree ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.management)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.management ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.memory)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.memory ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.memory.buffer)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.memory.buffer ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.memory.list)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.memory.list ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.network)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.network ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.network.jms)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.network.jms ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.openwire)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.openwire ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.openwire.tool)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.openwire.tool ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.openwire.v1)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.openwire.v1 ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.openwire.v2)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.openwire.v2 ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.openwire.v3)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.openwire.v3 ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.pool)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.pool ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.proxy)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.proxy ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.security)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.security ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.selector)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.selector ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.spring)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.spring ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.state)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.state ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.amq)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.amq ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.jdbc)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.jdbc ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.jdbc.adapter)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.jdbc.adapter ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.journal)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.journal ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.kahadaptor)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.kahadaptor ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.memory)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.memory ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.thread)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.thread ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transaction)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transaction ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.discovery)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.discovery ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.discovery.multicast)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.discovery.multicast
    
    
    
    
    
    
    
    
    
    
    
     ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.discovery.rendezvous)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.discovery.rendezvous
    
    
    
    
    
    
    
    
    
    
    
     ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.discovery.simple)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.discovery.simple
    
    
    
    
    
    
    
    
    
    
    
     ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.failover)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.failover ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.fanout)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.fanout ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.logwriters)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.logwriters ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.mock)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.mock ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.multicast)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.multicast ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.nio)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.nio ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.peer)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.peer ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.reliable)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.reliable ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.stomp)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.stomp ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.tcp)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.tcp ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.udp)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.udp ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.vm)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.vm ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.usage)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.usage ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.util)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.util ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.wireformat)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.wireformat ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.xbean)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.xbean ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.component.jms ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.impl ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.util ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool)(version&gt;=1.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.pool ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool.impl)(version&gt;=1.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.pool.impl ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.derby.jdbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.derby.jdbc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context)(version&gt;=3.3.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xbean.spring.context ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.impl)(version&gt;=3.3.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xbean.spring.context.impl ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jam)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jam
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.propertyeditors)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.propertyeditors
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.w3c.dom.traversal
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.activemq.activemq-core/5.0.0' presentationname='activemq-core' symbolicname='org.apache.activemq.activemq-core' uri='../org/apache/activemq/activemq-core/5.0.0/activemq-core-5.0.0.jar' version='5.0.0'>
  <description>
    The ActiveMQ Message Broker and Client implementations
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2134700
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='activemq-core'/>
    <p n='symbolicname' v='org.apache.activemq.activemq-core'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.pool'/>
    <p n='uses' v='org.apache.commons.pool.impl,org.apache.commons.logging,javax.transaction.xa,org.apache.activemq,org.apache.activemq.util,org.apache.commons.pool,javax.transaction,org.apache.activemq.transport,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.openwire.v3'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.wireformat'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.filter'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.commons.logging,org.w3c.dom.traversal,org.apache.activemq.util,javax.xml.parsers,org.apache.activemq.command,org.apache.xpath,org.apache.activemq.broker.region,org.springframework.beans.factory,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transaction'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.command,org.apache.activemq.store,org.apache.commons.logging,javax.transaction.xa'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.network.jms'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.util,javax.naming,org.apache.commons.logging,org.apache.activemq,javax.jms,org.springframework.jndi'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.openwire.tool'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.codehaus.jam'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.selector'/>
    <p n='uses' v='org.apache.activemq.filter,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.thread'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.usage'/>
    <p n='uses' v='org.apache.activemq.kaha,org.apache.activemq.store,org.apache.commons.logging,org.apache.activemq'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.jndi'/>
    <p n='uses' v='javax.naming,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq,javax.naming.spi,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.view'/>
    <p n='uses' v='org.apache.activemq.broker,javax.management,org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.broker.jmx,org.apache.commons.logging,org.apache.activemq.broker.region'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl'/>
    <p n='uses' v='org.apache.activemq.kaha.impl.container,org.apache.commons.logging,org.apache.activemq.kaha.impl.async,org.apache.activemq.kaha.impl.index,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.activemq.kaha.impl.data'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.reliable'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq.transport,org.apache.activemq.transport.udp'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.amq'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.activemq.transaction,org.apache.activemq.thread,org.apache.activemq.kaha.impl.async,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq.usage,org.apache.activemq.store.kahadaptor,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.store,org.apache.activemq.kaha.impl.index.hash'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport'/>
    <p n='uses' v='org.apache.activemq.openwire,org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.region'/>
    <p n='uses' v='org.apache.activemq.broker.region.policy,org.apache.activemq.filter,org.apache.activemq.transaction,org.apache.activemq.selector,org.apache.activemq.thread,org.apache.activemq.usage,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.broker,javax.management,org.apache.commons.logging,org.apache.activemq.management,org.apache.activemq.broker.region.group,org.apache.activemq.kaha,org.apache.activemq.command,org.apache.activemq.advisory,org.apache.activemq.store,org.apache.activemq.state,org.apache.activemq.broker.region.cursors,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.peer'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.network,org.apache.activemq.util,org.apache.activemq.transport.vm,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.fanout'/>
    <p n='uses' v='org.apache.activemq.transport.discovery,org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.state,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker'/>
    <p n='uses' v='org.apache.activemq.network,org.apache.activemq.broker.region.policy,org.apache.activemq.filter,org.apache.activemq.transaction,org.apache.activemq.proxy,org.apache.activemq.network.jms,org.apache.activemq.thread,org.apache.activemq.usage,org.apache.activemq.transport.vm,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.store.amq,org.apache.activemq.broker.jmx,org.apache.activemq.broker.region,org.apache.activemq.transport,org.apache.activemq.transport.discovery,org.apache.activemq.broker.region.virtual,javax.management,org.apache.commons.logging,org.apache.activemq.management,javax.transaction.xa,org.apache.activemq.broker.ft,org.apache.activemq.kaha,org.apache.activemq.store.memory,org.apache.activemq.advisory,org.apache.activemq.command,org.apache.activemq.store,org.apache.activemq.state,org.apache.activemq.transport.tcp,javax.jms,org.apache.activemq.security,javax.net.ssl'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.discovery'/>
    <p n='uses' v='org.apache.activemq.transport.failover,org.apache.activemq.util,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq.transport,org.apache.activemq'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.region.virtual'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.selector,org.apache.commons.logging,org.apache.activemq.broker.region,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.failover'/>
    <p n='uses' v='org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.state,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.jaas'/>
    <p n='uses' v='javax.naming.directory,javax.security.auth.login,org.apache.commons.logging,javax.security.auth.spi,javax.naming,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.stomp'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.state,org.apache.activemq.transport,org.apache.activemq.transport.tcp,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.camel.component'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.camel,org.apache.camel.component.jms,org.apache.commons.logging,org.apache.activemq.kaha.impl.async,org.apache.camel.impl,org.apache.activemq.spring,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.openwire.v2'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.wireformat'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.management'/>
    <p n='uses' v='org.apache.activemq.util,javax.management.j2ee.statistics,org.apache.commons.logging,org.apache.activemq,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.index'/>
    <p n='uses' v='org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.activemq.kaha.impl.data,org.apache.commons.logging'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.nio'/>
    <p n='uses' v='org.apache.activemq.wireformat,org.apache.activemq.util,org.apache.activemq.command,javax.net,org.apache.activemq.transport.tcp,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.ft'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.commons.logging,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.broker.region,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.blob'/>
    <p n='uses' v='org.apache.activemq.command,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.xbean'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.commons.logging,org.apache.xbean.spring.context,org.springframework.context,org.springframework.core.io,org.springframework.beans,org.springframework.util,org.springframework.beans.factory,org.apache.xbean.spring.context.impl'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.mock'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.camel.converter'/>
    <p n='uses' v='org.apache.activemq.command,org.apache.camel,org.apache.camel.component.jms,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.jdbc'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.commons.logging,org.apache.activemq.usage,org.apache.activemq.wireformat,org.apache.activemq,javax.sql,org.apache.activemq.util,org.apache.activemq.store.memory,org.apache.activemq.command,org.apache.derby.jdbc,org.apache.activemq.store,org.apache.activemq.store.jdbc.adapter'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.memory'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.store,org.apache.commons.logging,org.apache.activemq.usage'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.openwire.v1'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.wireformat'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.advisory'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.commons.logging,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.state,org.apache.activemq.broker.region,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.util'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.advisory,org.apache.activemq.command,org.apache.activemq.broker.region,org.springframework.beans.factory,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.store.journal,org.apache.activemq.command,org.apache.activemq.usage,org.springframework.beans.factory,org.apache.activemq'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.index.hash'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.kaha,org.apache.commons.logging,org.apache.activemq.kaha.impl.index'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.state'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.tcp'/>
    <p n='uses' v='org.apache.activemq.openwire,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,javax.net,org.apache.activemq.transport,javax.net.ssl'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.security'/>
    <p n='uses' v='org.apache.activemq.broker,javax.naming.directory,javax.security.auth.login,org.apache.activemq.jaas,org.apache.activemq.filter,org.apache.commons.logging,javax.naming,org.apache.activemq.command,org.apache.activemq.broker.region,javax.security.auth,javax.jms,javax.security.auth.callback'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.network'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.transport.discovery,javax.naming.directory,javax.management,org.apache.activemq.filter,org.apache.commons.logging,org.apache.activemq,javax.naming,org.apache.activemq.util,org.apache.activemq.broker.jmx,org.apache.activemq.advisory,org.apache.activemq.command,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.openwire'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.wireformat'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.region.policy'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.filter,org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq.usage,org.apache.activemq,org.apache.activemq.broker.region.group,org.apache.activemq.memory.list,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.activemq.command,org.apache.activemq.broker.region,org.apache.activemq.broker.region.cursors,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.proxy'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq.transport,org.apache.activemq'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.memory.buffer'/>
    <p n='uses' v='org.apache.activemq.command,org.apache.activemq.broker.region'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.wireformat'/>
    <p n='uses' v='org.apache.activemq.util'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.vm'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.command,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.spring'/>
    <p n='uses' v='org.springframework.beans.factory,org.apache.activemq'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq'/>
    <p n='uses' v='org.apache.activemq.filter,org.apache.activemq.transaction,org.apache.activemq.thread,org.apache.activemq.selector,org.apache.activemq.usage,org.apache.activemq.jndi,org.apache.activemq.util,org.apache.activemq.transport,org.apache.activemq.broker.region,org.apache.commons.logging,javax.transaction.xa,org.apache.activemq.management,org.apache.activemq.blob,org.apache.activemq.advisory,org.apache.activemq.command,org.apache.activemq.state,org.apache.activemq.transport.tcp,javax.jms,javax.net.ssl'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.util'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.commons.logging,org.apache.activemq,org.apache.activemq.command,org.apache.activemq.store,org.apache.activemq.state,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.journal'/>
    <p n='uses' v='org.apache.activeio.journal.active,org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.activemq.transaction,org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq.usage,org.apache.activeio.journal,javax.sql,org.apache.activemq.util,org.apache.activemq.store.jdbc,org.apache.activemq.command,org.apache.activemq.store,org.apache.activeio.packet'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.data'/>
    <p n='uses' v='org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.commons.logging,org.apache.activemq.kaha.impl.index'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.jmx'/>
    <p n='uses' v='org.apache.activemq.network,org.apache.activemq.filter,org.apache.activemq.proxy,org.apache.activemq.network.jms,org.apache.activemq.selector,org.apache.activemq.thread,org.apache.activemq.usage,javax.management.openmbean,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.broker.region,org.apache.activemq.transport,org.apache.activemq.broker,javax.management,org.apache.commons.logging,org.apache.activemq.management,org.apache.activemq.broker.ft,javax.management.remote,org.apache.activemq.command,org.apache.activemq.store,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.index.tree'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.kaha,org.apache.commons.logging,org.apache.activemq.kaha.impl.index'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.camel'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.camel,org.apache.camel.component.jms,org.apache.camel.util,org.apache.activemq.management,org.apache.activemq.spring,org.apache.activemq.transport,org.apache.activemq,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.multicast'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.command,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq.transport,org.apache.activemq.transport.udp'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.container'/>
    <p n='uses' v='org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.activemq.kaha.impl.index.hash,org.apache.commons.logging,org.apache.activemq.kaha.impl.index'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha.impl.async'/>
    <p n='uses' v='org.apache.activemq.thread,org.apache.commons.logging,org.apache.activeio.journal,org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.activemq.kaha.impl.data,org.apache.activeio.packet'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.udp'/>
    <p n='uses' v='org.apache.activemq.openwire,org.apache.commons.logging,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.util,org.apache.activemq.transport.reliable,org.apache.activemq.command,org.apache.activemq.transport.tcp,org.apache.activemq.transport'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.region.group'/>
    <p n='uses' v='org.apache.activemq.command'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.memory.list'/>
    <p n='uses' v='org.apache.activemq.filter,org.apache.activemq.command,org.apache.activemq.memory.buffer,org.apache.commons.logging,org.apache.activemq.broker.region'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.kahadaptor'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.commons.logging,org.apache.activemq.kaha.impl.async,org.apache.activemq.usage,org.apache.activemq.wireformat,org.apache.activemq.kaha.impl.index,org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.kaha,org.apache.activemq.store.amq,org.apache.activemq.command,org.apache.activemq.store,org.apache.activemq.kaha.impl.index.hash'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.discovery.simple'/>
    <p n='uses' v='org.apache.activemq.transport.discovery,org.apache.activemq.util,org.apache.activemq.command,org.apache.commons.logging'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.kaha'/>
    <p n='uses' v='org.apache.activemq.kaha.impl,org.apache.activemq.util,org.apache.activemq.openwire,org.apache.activemq.command,org.apache.activemq.wireformat'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.command'/>
    <p n='uses' v='org.apache.activemq.filter,org.apache.commons.logging,javax.transaction.xa,org.apache.activemq.usage,org.apache.activemq.wireformat,org.apache.activemq.blob,org.apache.activemq,org.apache.activemq.jndi,org.apache.activemq.util,org.apache.activemq.state,org.apache.activemq.broker.region,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.discovery.multicast'/>
    <p n='uses' v='org.apache.activemq.transport.discovery,org.apache.activemq.util,org.apache.activemq.command,org.apache.commons.logging'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.broker.region.cursors'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.openwire,org.apache.activemq.filter,org.apache.commons.logging,org.apache.activemq.usage,org.apache.activemq.wireformat,org.apache.activemq,org.apache.activemq.kaha,org.apache.activemq.advisory,org.apache.activemq.command,org.apache.activemq.store,org.apache.activemq.broker.region'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.transport.discovery.rendezvous'/>
    <p n='uses' v='org.apache.activemq.transport.discovery,javax.jmdns,org.apache.commons.logging,org.apache.activemq.util,org.apache.activemq.command,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.store.jdbc.adapter'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.activemq.store.jdbc,org.apache.activemq.command,org.apache.commons.logging,javax.jms'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.memory'/>
    <p n='uses' v='org.apache.activemq.thread,org.apache.commons.logging,org.apache.activemq.usage'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jmdns)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.jmdns
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.j2ee.statistics)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.j2ee.statistics
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.openmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.openmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.directory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.directory
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.journal)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activeio.journal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.journal.active)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activeio.journal.active
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.packet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activeio.packet
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.advisory)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.advisory ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.blob)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.blob ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.ft)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.ft ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.jmx)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.jmx ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.region)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.region ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.region.cursors)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.region.cursors ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.region.group)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.region.group ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.region.policy)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.region.policy ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.region.virtual)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.region.virtual ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.util)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.util ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.view)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.view ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.camel)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.camel ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.camel.component)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.camel.component ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.camel.converter)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.camel.converter ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.command)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.command ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.filter)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.filter ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.jaas)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.jaas ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.jndi)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.jndi ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.async)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.async ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.container)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.container ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.data)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.data ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.index)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.index ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.index.hash)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.index.hash ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.index.tree)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.index.tree ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.management)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.management ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.memory)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.memory ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.memory.buffer)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.memory.buffer ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.memory.list)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.memory.list ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.network)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.network ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.network.jms)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.network.jms ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.openwire)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.openwire ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.openwire.tool)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.openwire.tool ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.openwire.v1)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.openwire.v1 ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.openwire.v2)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.openwire.v2 ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.openwire.v3)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.openwire.v3 ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.pool)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.pool ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.proxy)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.proxy ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.security)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.security ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.selector)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.selector ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.spring)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.spring ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.state)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.state ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.amq)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.amq ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.jdbc)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.jdbc ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.jdbc.adapter)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.jdbc.adapter ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.journal)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.journal ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.kahadaptor)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.kahadaptor ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.memory)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.memory ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.thread)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.thread ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transaction)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transaction ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.discovery)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.discovery ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.discovery.multicast)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.discovery.multicast
    
    
    
    
    
    
    
    
    
    
    
     ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.discovery.rendezvous)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.discovery.rendezvous
    
    
    
    
    
    
    
    
    
    
    
     ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.discovery.simple)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.discovery.simple
    
    
    
    
    
    
    
    
    
    
    
     ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.failover)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.failover ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.fanout)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.fanout ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.mock)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.mock ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.multicast)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.multicast ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.nio)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.nio ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.peer)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.peer ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.reliable)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.reliable ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.stomp)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.stomp ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.tcp)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.tcp ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.udp)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.udp ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport.vm)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport.vm ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.usage)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.usage ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.util)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.util ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.wireformat)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.wireformat ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.xbean)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.xbean ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=1.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=1.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.component.jms ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=1.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.impl ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=1.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.util ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.pool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.pool.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.derby.jdbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.derby.jdbc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xbean.spring.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xbean.spring.context.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jam)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jam
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.w3c.dom.traversal
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.activemq.activemq-jaas/5.0.0' presentationname='activemq-jaas' symbolicname='org.apache.activemq.activemq-jaas' uri='../org/apache/activemq/activemq-jaas/5.0.0/activemq-jaas-5.0.0.jar' version='5.0.0'>
  <description>
    A collection of generic JAAS Login Modules
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    25160
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='activemq-jaas'/>
    <p n='symbolicname' v='org.apache.activemq.activemq-jaas'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.jaas'/>
    <p n='uses' v='javax.naming.directory,javax.security.auth.login,org.apache.commons.logging,javax.security.auth.spi,javax.naming,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='5.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.directory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.directory
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.jaas)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.jaas ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.activemq.activemq-jaas/5.1.0' presentationname='activemq-jaas' symbolicname='org.apache.activemq.activemq-jaas' uri='../org/apache/activemq/activemq-jaas/5.1.0/activemq-jaas-5.1.0.jar' version='5.1.0'>
  <description>
    A collection of generic JAAS Login Modules
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    25388
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='activemq-jaas'/>
    <p n='symbolicname' v='org.apache.activemq.activemq-jaas'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.jaas'/>
    <p n='uses' v='javax.naming.directory,javax.security.auth.login,org.apache.commons.logging,javax.security.auth.spi,javax.naming,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.directory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.directory
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.jaas)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.jaas ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.activemq.activemq-jaas/5.2.0' presentationname='activemq-jaas' symbolicname='org.apache.activemq.activemq-jaas' uri='../org/apache/activemq/activemq-jaas/5.2.0/activemq-jaas-5.2.0.jar' version='5.2.0'>
  <description>
    A collection of generic JAAS Login Modules
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    25390
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='activemq-jaas'/>
    <p n='symbolicname' v='org.apache.activemq.activemq-jaas'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.jaas'/>
    <p n='uses' v='javax.naming.directory,javax.security.auth.login,org.apache.commons.logging,javax.security.auth.spi,javax.naming,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.directory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.directory
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.jaas)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.jaas ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.activemq.activeio-core/3.1.2' presentationname='activeio-core' symbolicname='org.apache.activemq.activeio-core' uri='../org/apache/activemq/activeio-core/3.1.2/activeio-core-3.1.2.jar' version='3.1.2'>
  <description>
    A high performance IO abstraction framework
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    102631
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='activeio-core'/>
    <p n='symbolicname' v='org.apache.activemq.activeio-core'/>
    <p n='version' t='version' v='3.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activeio.xnet.hba'/>
    <p n='uses' v='org.apache.activeio.xnet'/>
    <p n='version' t='version' v='3.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activeio.oneport'/>
    <p n='uses' v='org.apache.activeio.packet'/>
    <p n='version' t='version' v='3.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activeio.journal.active'/>
    <p n='uses' v='org.apache.activeio.journal,org.apache.activeio.adapter,org.apache.activeio.packet'/>
    <p n='version' t='version' v='3.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activeio.adapter'/>
    <p n='uses' v='org.apache.activeio.packet'/>
    <p n='version' t='version' v='3.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activeio.journal.howl'/>
    <p n='uses' v='org.objectweb.howl.log,org.apache.activeio.packet,org.apache.activeio.journal'/>
    <p n='version' t='version' v='3.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activeio.packet'/>
    <p n='version' t='version' v='3.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activeio.xnet'/>
    <p n='uses' v='org.apache.activeio.xnet.hba,org.apache.commons.logging'/>
    <p n='version' t='version' v='3.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activeio.journal'/>
    <p n='uses' v='org.apache.activeio.packet'/>
    <p n='version' t='version' v='3.1.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.adapter)(version&gt;=3.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.activeio.adapter ;version=3.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.journal)(version&gt;=3.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.activeio.journal ;version=3.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.journal.active)(version&gt;=3.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.activeio.journal.active ;version=3.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.journal.howl)(version&gt;=3.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.activeio.journal.howl ;version=3.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.oneport)(version&gt;=3.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.activeio.oneport ;version=3.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.packet)(version&gt;=3.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.activeio.packet ;version=3.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.xnet)(version&gt;=3.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.activeio.xnet ;version=3.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.xnet.hba)(version&gt;=3.1.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.activeio.xnet.hba ;version=3.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.howl.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.howl.log
  </require>
</resource>
<resource id='org.apache.activemq.activeio-core/3.1.1' presentationname='activeio-core' symbolicname='org.apache.activemq.activeio-core' uri='../org/apache/activemq/activeio-core/3.1.1/activeio-core-3.1.1.jar' version='3.1.1'>
  <description>
    A high performance IO abstraction framework
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    102630
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='activeio-core'/>
    <p n='symbolicname' v='org.apache.activemq.activeio-core'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activeio.xnet.hba'/>
    <p n='uses' v='org.apache.activeio.xnet'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activeio.oneport'/>
    <p n='uses' v='org.apache.activeio.packet'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activeio.journal.active'/>
    <p n='uses' v='org.apache.activeio.journal,org.apache.activeio.adapter,org.apache.activeio.packet'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activeio.adapter'/>
    <p n='uses' v='org.apache.activeio.packet'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activeio.journal.howl'/>
    <p n='uses' v='org.objectweb.howl.log,org.apache.activeio.packet,org.apache.activeio.journal'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activeio.packet'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activeio.xnet'/>
    <p n='uses' v='org.apache.activeio.xnet.hba,org.apache.commons.logging'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activeio.journal'/>
    <p n='uses' v='org.apache.activeio.packet'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.adapter)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.activeio.adapter ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.journal)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.activeio.journal ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.journal.active)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.activeio.journal.active ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.journal.howl)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.activeio.journal.howl ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.oneport)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.activeio.oneport ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.packet)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.activeio.packet ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.xnet)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.activeio.xnet ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activeio.xnet.hba)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.activeio.xnet.hba ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.howl.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.howl.log
  </require>
</resource>
<resource id='org.apache.activemq.activemq-pool/5.2.0' presentationname='activemq-pool' symbolicname='org.apache.activemq.activemq-pool' uri='../org/apache/activemq/activemq-pool/5.2.0/activemq-pool-5.2.0.jar' version='5.2.0'>
  <description>
    ActiveMQ Pooled ConnectionFactory
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    38313
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='activemq-pool'/>
    <p n='symbolicname' v='org.apache.activemq.activemq-pool'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.pool'/>
    <p n='uses' v='org.apache.geronimo.transaction.manager,org.apache.commons.pool.impl,org.apache.commons.logging,javax.transaction.xa,org.apache.activemq,org.apache.activemq.jndi,org.apache.activemq.util,javax.naming,org.apache.activemq.ra,org.apache.activemq.advisory,org.apache.commons.pool,org.apache.activemq.transport,javax.transaction,org.springframework.beans.factory,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.advisory)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.advisory ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.jndi)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.jndi ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.pool)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.pool ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.ra)(version&gt;=5.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.ra ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.util)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.util ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.pool ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool.impl)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.pool.impl ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.manager)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.geronimo.transaction.manager
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.activemq.activemq-ra/5.2.0' presentationname='activemq-ra' symbolicname='org.apache.activemq.activemq-ra' uri='../org/apache/activemq/activemq-ra/5.2.0/activemq-ra-5.2.0.jar' version='5.2.0'>
  <description>
    A JCA Resource Adapter used to integrate ActiveMQ with transactional
    
    
    
    
    
    
    
    
    
    
    
     enterprise
    
     containers
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    85081
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='activemq-ra'/>
    <p n='symbolicname' v='org.apache.activemq.activemq-ra'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.ra'/>
    <p n='uses' v='javax.resource.spi,org.apache.activemq.filter,javax.resource.spi.work,org.apache.activemq.transaction,org.apache.activemq.selector,org.apache.activemq,javax.resource.spi.endpoint,javax.naming,org.apache.activemq.util,org.apache.activemq.broker,org.apache.commons.logging,javax.transaction.xa,org.apache.activemq.command,javax.resource,javax.security.auth,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.endpoint)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.endpoint ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.work)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.work ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.command)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.command ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.filter)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.filter ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.ra)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.ra ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.selector)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.selector ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transaction)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transaction ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.util)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.util ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.activemq.activemq-console/5.1.0' presentationname='activemq-console' symbolicname='org.apache.activemq.activemq-console' uri='../org/apache/activemq/activemq-console/5.1.0/activemq-console-5.1.0.jar' version='5.1.0'>
  <description>
    ActiveMQ Management Console
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    81403
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='activemq-console'/>
    <p n='symbolicname' v='org.apache.activemq.activemq-console'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.console.formatter'/>
    <p n='uses' v='javax.management,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.console'/>
    <p n='uses' v='org.apache.activemq.console.formatter,javax.management,org.apache.activemq.broker.util,org.apache.activemq.console.command,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.console.util'/>
    <p n='uses' v='javax.management,org.apache.activemq.broker.util,org.apache.activemq.console.filter,javax.management.remote,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.console.filter'/>
    <p n='uses' v='javax.management,javax.management.openmbean,org.apache.activemq,javax.management.remote,org.apache.activemq.command,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.console.command'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.console,javax.management,javax.management.openmbean,org.apache.activemq,javax.management.remote,org.apache.activemq.console.formatter,org.apache.activemq.console.util,org.apache.activemq.command,org.apache.activemq.console.filter,javax.jms'/>
    <p n='version' t='version' v='5.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.openmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.openmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=5.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker)(version&gt;=5.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.broker ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.util)(version&gt;=5.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.broker.util ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.command)(version&gt;=5.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.command ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.console)(version&gt;=5.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.console ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.console.command)(version&gt;=5.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.console.command ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.console.filter)(version&gt;=5.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.console.filter ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.console.formatter)(version&gt;=5.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.console.formatter ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.console.util)(version&gt;=5.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.console.util ;version=5.1.0
  </require>
</resource>
<resource id='org.apache.activemq.activemq-console/5.2.0' presentationname='activemq-console' symbolicname='org.apache.activemq.activemq-console' uri='../org/apache/activemq/activemq-console/5.2.0/activemq-console-5.2.0.jar' version='5.2.0'>
  <description>
    ActiveMQ Management Console
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    82962
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='activemq-console'/>
    <p n='symbolicname' v='org.apache.activemq.activemq-console'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.console.formatter'/>
    <p n='uses' v='javax.management,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.console'/>
    <p n='uses' v='org.apache.activemq.console.formatter,javax.management,org.apache.activemq.broker.util,org.apache.activemq.console.command,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.console.util'/>
    <p n='uses' v='javax.management,org.apache.activemq.broker.util,org.apache.activemq.console.filter,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.console.filter'/>
    <p n='uses' v='javax.management,org.apache.activemq.command,javax.management.openmbean,org.apache.activemq,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.console.command'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.activemq.console,javax.management,javax.management.openmbean,org.apache.activemq,javax.management.remote,org.apache.activemq.console.formatter,org.apache.activemq.console.util,org.apache.activemq.command,org.apache.activemq.console.filter,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.openmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.openmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=5.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker)(version&gt;=5.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.broker ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.util)(version&gt;=5.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.broker.util ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.command)(version&gt;=5.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.command ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.console)(version&gt;=5.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.console ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.console.command)(version&gt;=5.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.console.command ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.console.filter)(version&gt;=5.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.console.filter ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.console.formatter)(version&gt;=5.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.console.formatter ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.console.util)(version&gt;=5.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.console.util ;version=5.2.0
  </require>
</resource>
<resource id='org.apache.activemq.activemq-camel/5.2.0' presentationname='activemq-camel' symbolicname='org.apache.activemq.activemq-camel' uri='../org/apache/activemq/activemq-camel/5.2.0/activemq-camel-5.2.0.jar' version='5.2.0'>
  <description>
    ActiveMQ component for Camel
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    42333
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='activemq-camel'/>
    <p n='symbolicname' v='org.apache.activemq.activemq-camel'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.camel'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.camel.converter'/>
    <p n='uses' v='org.apache.activemq.command,org.apache.camel,org.apache.camel.component.jms,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.camel.component'/>
    <p n='uses' v='org.apache.camel.component.jms,org.apache.activemq.kaha.impl.async,org.apache.commons.logging,org.apache.activemq.spring,org.apache.activemq,org.springframework.transaction,org.apache.activemq.util,org.apache.camel,org.apache.activemq.command,org.apache.activemq.advisory,org.apache.camel.util,org.apache.camel.impl,org.springframework.beans.factory,org.springframework.jms.connection,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.activemq.camel'/>
    <p n='uses' v='org.apache.activemq.util,org.apache.camel,org.apache.camel.component.jms,org.apache.camel.util,org.apache.activemq.management,org.apache.activemq.spring,org.apache.activemq.transport,org.apache.activemq,javax.jms'/>
    <p n='version' t='version' v='5.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.advisory)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.advisory ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.camel)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.camel ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.camel.component)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.camel.component ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.camel.converter)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.camel.converter ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.command)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.command ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.kaha.impl.async)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.kaha.impl.async ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.management)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.management ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.spring)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.spring ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.util)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.util ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.component.jms ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.transaction
  </require>
</resource>
<resource id='org.apache.openejb.openejb-axis/3.0.1' presentationname='openejb-axis' symbolicname='org.apache.openejb.openejb-axis' uri='../org/apache/openejb/openejb-axis/3.0.1/openejb-axis-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    114895
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-axis'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-axis'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis.assembler'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.openejb,javax.wsdl.factory,javax.wsdl.extensions.schema,javax.wsdl,javax.wsdl.xml,org.xml.sax,javax.xml.rpc.holders,org.apache.ws.commons.schema,org.w3c.dom,org.apache.commons.logging,javax.wsdl.extensions,com.ibm.wsdl.extensions,org.apache.openejb.jee,org.apache.openejb.assembler.classic,com.ibm.wsdl.extensions.schema'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis'/>
    <p n='uses' v='org.apache.axis.transport.http,org.apache.openejb.server.webservices.saaj,org.apache.axis.providers.java,org.apache.openejb.server.axis.assembler,javax.xml.namespace,org.apache.axis.utils,javax.interceptor,org.apache.openejb.core.webservices,org.apache.axis.constants,org.apache.openejb,org.apache.openejb.server.httpd,javax.naming,javax.xml.rpc.handler,org.apache.axis.description,org.apache.axis.handlers,javax.xml.rpc.soap,javax.wsdl,org.apache.openejb.util,org.xml.sax,javax.xml.rpc.encoding,javax.xml.rpc.holders,org.apache.axis.message,org.apache.axis.soap,org.w3c.dom,javax.xml.soap,org.apache.axis.encoding.ser,javax.xml.rpc,org.apache.openejb.server.webservices,javax.xml.rpc.handler.soap,org.apache.axis.encoding,org.apache.openejb.jee,org.apache.axis.handlers.soap,org.apache.axis'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis.client'/>
    <p n='uses' v='org.apache.axis.transport.http,org.apache.openejb.server.webservices.saaj,javax.xml.namespace,org.apache.axis.utils,org.apache.axis.constants,net.sf.cglib.reflect,javax.naming,net.sf.cglib.proxy,javax.xml.rpc.handler,org.apache.axis.description,org.apache.axis.handlers,org.apache.axis.client,org.apache.openejb.core.ivm.naming,javax.wsdl,javax.xml.rpc.holders,javax.xml.rpc.encoding,org.apache.axis.message,org.apache.axis.soap,org.apache.axis.configuration,net.sf.cglib.core,org.apache.axis.encoding.ser,javax.xml.rpc,org.apache.axis.encoding,org.apache.axis'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.encoding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.encoding
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.holders)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.holders
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.core
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.reflect)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.reflect
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.description)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.description
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.encoding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.encoding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.encoding.ser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.encoding.ser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.handlers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.handlers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.handlers.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.handlers.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.providers.java)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.providers.java
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.transport.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.transport.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis.assembler)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis.assembler ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis.client)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis.client ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.openejb.openejb-axis/3.1.1' presentationname='openejb-axis' symbolicname='org.apache.openejb.openejb-axis' uri='../org/apache/openejb/openejb-axis/3.1.1/openejb-axis-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    115284
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-axis'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-axis'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis.assembler'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.openejb,javax.wsdl.factory,javax.wsdl.extensions.schema,javax.wsdl,javax.wsdl.xml,org.xml.sax,javax.xml.rpc.holders,org.apache.ws.commons.schema,org.w3c.dom,org.apache.commons.logging,javax.wsdl.extensions,com.ibm.wsdl.extensions,org.apache.openejb.jee,org.apache.openejb.assembler.classic,com.ibm.wsdl.extensions.schema'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis'/>
    <p n='uses' v='org.apache.axis.transport.http,org.apache.openejb.server.webservices.saaj,org.apache.axis.providers.java,org.apache.openejb.server.axis.assembler,javax.xml.namespace,org.apache.axis.utils,javax.interceptor,org.apache.openejb.core.webservices,org.apache.axis.constants,org.apache.openejb,org.apache.openejb.server.httpd,javax.naming,javax.xml.rpc.handler,org.apache.axis.description,org.apache.axis.handlers,javax.xml.rpc.soap,javax.wsdl,org.apache.openejb.util,org.xml.sax,javax.xml.rpc.encoding,javax.xml.rpc.holders,org.apache.axis.message,org.apache.axis.soap,org.w3c.dom,javax.xml.soap,org.apache.axis.encoding.ser,javax.xml.rpc,org.apache.openejb.server.webservices,javax.xml.rpc.handler.soap,org.apache.axis.encoding,org.apache.openejb.jee,org.apache.axis.handlers.soap,org.apache.axis'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis.client'/>
    <p n='uses' v='org.apache.axis.transport.http,org.apache.openejb.server.webservices.saaj,javax.xml.namespace,org.apache.axis.utils,org.apache.axis.constants,net.sf.cglib.reflect,javax.naming,net.sf.cglib.proxy,javax.xml.rpc.handler,org.apache.axis.description,org.apache.axis.handlers,org.apache.axis.client,org.apache.openejb.core.ivm.naming,javax.wsdl,javax.xml.rpc.holders,javax.xml.rpc.encoding,org.apache.axis.message,org.apache.axis.soap,org.apache.axis.configuration,net.sf.cglib.core,org.apache.axis.encoding.ser,javax.xml.rpc,org.apache.axis.encoding,org.apache.axis'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.encoding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.encoding
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.holders)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.holders
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.core
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.reflect)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.reflect
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.description)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.description
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.encoding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.encoding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.encoding.ser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.encoding.ser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.handlers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.handlers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.handlers.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.handlers.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.providers.java)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.providers.java
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.transport.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.transport.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis.assembler)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis.assembler ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis.client)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis.client ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.openejb.openejb-axis/3.0.0.beta-2' presentationname='openejb-axis' symbolicname='org.apache.openejb.openejb-axis' uri='../org/apache/openejb/openejb-axis/3.0-beta-2/openejb-axis-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    114977
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-axis'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-axis'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis.assembler'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.openejb,javax.wsdl.factory,javax.wsdl.extensions.schema,javax.wsdl,javax.wsdl.xml,org.xml.sax,javax.xml.rpc.holders,org.apache.ws.commons.schema,org.w3c.dom,org.apache.commons.logging,javax.wsdl.extensions,com.ibm.wsdl.extensions,org.apache.openejb.jee,org.apache.openejb.assembler.classic,com.ibm.wsdl.extensions.schema'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis'/>
    <p n='uses' v='org.apache.axis.transport.http,org.apache.openejb.server.webservices.saaj,org.apache.axis.providers.java,org.apache.openejb.server.axis.assembler,javax.xml.namespace,org.apache.axis.utils,javax.interceptor,org.apache.openejb.core.webservices,org.apache.axis.constants,org.apache.openejb,org.apache.openejb.server.httpd,javax.naming,javax.xml.rpc.handler,org.apache.axis.description,org.apache.axis.handlers,javax.xml.rpc.soap,javax.wsdl,org.apache.openejb.util,org.xml.sax,javax.xml.rpc.encoding,javax.xml.rpc.holders,org.apache.axis.message,org.apache.axis.soap,org.w3c.dom,javax.xml.soap,org.apache.axis.encoding.ser,javax.xml.rpc,org.apache.openejb.server.webservices,javax.xml.rpc.handler.soap,org.apache.axis.encoding,org.apache.openejb.jee,org.apache.axis.handlers.soap,org.apache.axis'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis.client'/>
    <p n='uses' v='org.apache.axis.transport.http,org.apache.openejb.server.webservices.saaj,javax.xml.namespace,org.apache.axis.utils,org.apache.axis.constants,net.sf.cglib.reflect,javax.naming,net.sf.cglib.proxy,javax.xml.rpc.handler,org.apache.axis.description,org.apache.axis.handlers,org.apache.axis.client,org.apache.openejb.core.ivm.naming,javax.wsdl,javax.xml.rpc.holders,javax.xml.rpc.encoding,org.apache.axis.message,org.apache.axis.soap,org.apache.axis.configuration,net.sf.cglib.core,org.apache.axis.encoding.ser,javax.xml.rpc,org.apache.axis.encoding,org.apache.axis'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.encoding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.encoding
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.holders)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.holders
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.core
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.reflect)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.reflect
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.description)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.description
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.encoding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.encoding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.encoding.ser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.encoding.ser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.handlers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.handlers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.handlers.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.handlers.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.providers.java)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.providers.java
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.transport.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.transport.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis.assembler)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis.assembler ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis.client)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis.client ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.openejb.openejb-axis/3.0.0' presentationname='openejb-axis' symbolicname='org.apache.openejb.openejb-axis' uri='../org/apache/openejb/openejb-axis/3.0/openejb-axis-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    115058
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-axis'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-axis'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis.assembler'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.openejb,javax.wsdl.factory,javax.wsdl.extensions.schema,javax.wsdl,javax.wsdl.xml,org.xml.sax,javax.xml.rpc.holders,org.apache.ws.commons.schema,org.w3c.dom,org.apache.commons.logging,javax.wsdl.extensions,com.ibm.wsdl.extensions,org.apache.openejb.jee,org.apache.openejb.assembler.classic,com.ibm.wsdl.extensions.schema'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis'/>
    <p n='uses' v='org.apache.axis.transport.http,org.apache.openejb.server.webservices.saaj,org.apache.axis.providers.java,org.apache.openejb.server.axis.assembler,javax.xml.namespace,org.apache.axis.utils,javax.interceptor,org.apache.openejb.core.webservices,org.apache.axis.constants,org.apache.openejb,org.apache.openejb.server.httpd,javax.naming,javax.xml.rpc.handler,org.apache.axis.description,org.apache.axis.handlers,javax.xml.rpc.soap,javax.wsdl,org.apache.openejb.util,org.xml.sax,javax.xml.rpc.encoding,javax.xml.rpc.holders,org.apache.axis.message,org.apache.axis.soap,org.w3c.dom,javax.xml.soap,org.apache.axis.encoding.ser,javax.xml.rpc,org.apache.openejb.server.webservices,javax.xml.rpc.handler.soap,org.apache.axis.encoding,org.apache.openejb.jee,org.apache.axis.handlers.soap,org.apache.axis'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis.client'/>
    <p n='uses' v='org.apache.axis.transport.http,org.apache.openejb.server.webservices.saaj,javax.xml.namespace,org.apache.axis.utils,org.apache.axis.constants,net.sf.cglib.reflect,javax.naming,net.sf.cglib.proxy,javax.xml.rpc.handler,org.apache.axis.description,org.apache.axis.handlers,org.apache.axis.client,org.apache.openejb.core.ivm.naming,javax.wsdl,javax.xml.rpc.holders,javax.xml.rpc.encoding,org.apache.axis.message,org.apache.axis.soap,org.apache.axis.configuration,net.sf.cglib.core,org.apache.axis.encoding.ser,javax.xml.rpc,org.apache.axis.encoding,org.apache.axis'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.encoding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.encoding
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.holders)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.holders
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.core
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.reflect)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.reflect
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.description)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.description
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.encoding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.encoding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.encoding.ser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.encoding.ser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.handlers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.handlers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.handlers.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.handlers.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.providers.java)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.providers.java
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.transport.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.transport.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis.assembler)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis.assembler ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis.client)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis.client ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.openejb.openejb-axis/3.1.0' presentationname='openejb-axis' symbolicname='org.apache.openejb.openejb-axis' uri='../org/apache/openejb/openejb-axis/3.1/openejb-axis-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    114586
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-axis'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-axis'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis.assembler'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.openejb,javax.wsdl.factory,javax.wsdl.extensions.schema,javax.wsdl,javax.wsdl.xml,org.xml.sax,javax.xml.rpc.holders,org.apache.ws.commons.schema,org.w3c.dom,org.apache.commons.logging,javax.wsdl.extensions,com.ibm.wsdl.extensions,org.apache.openejb.jee,org.apache.openejb.assembler.classic,com.ibm.wsdl.extensions.schema'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis'/>
    <p n='uses' v='org.apache.axis.transport.http,org.apache.openejb.server.webservices.saaj,org.apache.axis.providers.java,org.apache.openejb.server.axis.assembler,javax.xml.namespace,org.apache.axis.utils,javax.interceptor,org.apache.openejb.core.webservices,org.apache.axis.constants,org.apache.openejb,org.apache.openejb.server.httpd,javax.naming,javax.xml.rpc.handler,org.apache.axis.description,org.apache.axis.handlers,javax.xml.rpc.soap,javax.wsdl,org.apache.openejb.util,org.xml.sax,javax.xml.rpc.encoding,javax.xml.rpc.holders,org.apache.axis.message,org.apache.axis.soap,org.w3c.dom,javax.xml.soap,org.apache.axis.encoding.ser,javax.xml.rpc,org.apache.openejb.server.webservices,javax.xml.rpc.handler.soap,org.apache.axis.encoding,org.apache.openejb.jee,org.apache.axis.handlers.soap,org.apache.axis'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis.client'/>
    <p n='uses' v='org.apache.axis.transport.http,org.apache.openejb.server.webservices.saaj,javax.xml.namespace,org.apache.axis.utils,org.apache.axis.constants,net.sf.cglib.reflect,javax.naming,net.sf.cglib.proxy,javax.xml.rpc.handler,org.apache.axis.description,org.apache.axis.handlers,org.apache.axis.client,org.apache.openejb.core.ivm.naming,javax.wsdl,javax.xml.rpc.holders,javax.xml.rpc.encoding,org.apache.axis.message,org.apache.axis.soap,org.apache.axis.configuration,net.sf.cglib.core,org.apache.axis.encoding.ser,javax.xml.rpc,org.apache.axis.encoding,org.apache.axis'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.encoding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.encoding
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.holders)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.holders
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.core
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.reflect)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.reflect
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.constants)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.constants
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.description)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.description
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.encoding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.encoding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.encoding.ser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.encoding.ser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.handlers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.handlers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.handlers.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.handlers.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.providers.java)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.providers.java
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.transport.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.transport.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis.assembler)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis.assembler ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis.client)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis.client ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.openejb.openejb-derbynet/3.0.0.beta-2' presentationname='openejb-derbynet' symbolicname='org.apache.openejb.openejb-derbynet' uri='../org/apache/openejb/openejb-derbynet/3.0-beta-2/openejb-derbynet-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13539
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-derbynet'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-derbynet'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.derbynet'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.log4j,org.apache.openejb.server,org.apache.openejb.loader,org.apache.derby.drda'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.derby.drda)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.derby.drda
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.derbynet)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.derbynet ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0.beta-2
  </require>
</resource>
<resource id='org.apache.openejb.openejb-derbynet/3.0.0' presentationname='openejb-derbynet' symbolicname='org.apache.openejb.openejb-derbynet' uri='../org/apache/openejb/openejb-derbynet/3.0/openejb-derbynet-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13429
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-derbynet'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-derbynet'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.derbynet'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.log4j,org.apache.openejb.server,org.apache.openejb.loader,org.apache.derby.drda'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.derby.drda)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.derby.drda
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.derbynet)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.derbynet ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-derbynet/3.1.1' presentationname='openejb-derbynet' symbolicname='org.apache.openejb.openejb-derbynet' uri='../org/apache/openejb/openejb-derbynet/3.1.1/openejb-derbynet-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13003
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-derbynet'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-derbynet'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.derbynet'/>
    <p n='uses' v='org.apache.log4j,org.apache.openejb.util,org.apache.openejb.server,org.apache.derby.drda,org.apache.openejb.loader'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.derby.drda)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.derby.drda
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.derbynet)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.derbynet ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-derbynet/3.1.0' presentationname='openejb-derbynet' symbolicname='org.apache.openejb.openejb-derbynet' uri='../org/apache/openejb/openejb-derbynet/3.1/openejb-derbynet-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12931
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-derbynet'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-derbynet'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.derbynet'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.log4j,org.apache.openejb.server,org.apache.openejb.loader,org.apache.derby.drda'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.derby.drda)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.derby.drda
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.derbynet)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.derbynet ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-derbynet/3.0.1' presentationname='openejb-derbynet' symbolicname='org.apache.openejb.openejb-derbynet' uri='../org/apache/openejb/openejb-derbynet/3.0.1/openejb-derbynet-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13306
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-derbynet'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-derbynet'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.derbynet'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.log4j,org.apache.openejb.server,org.apache.openejb.loader,org.apache.derby.drda'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.derby.drda)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.derby.drda
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.derbynet)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.derbynet ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-catalina/3.1.1' presentationname='openejb-tomcat-catalina' symbolicname='org.apache.openejb.openejb-tomcat-catalina' uri='../org/apache/openejb/openejb-tomcat-catalina/3.1.1/openejb-tomcat-catalina-3.1.1.jar' version='3.1.1'>
  <description>
    This module contains the classes that will be added to the
    
    
    
    
    
    
    
    
    
    
    
     catalina
    
     class
     loader
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    79563
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-catalina'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-catalina'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.catalina'/>
    <p n='uses' v='org.apache.catalina,javax.security.auth.login,org.apache.openejb.config,javax.ejb.spi,javax.xml.namespace,org.apache.openejb.core.webservices,org.apache.naming,org.apache.openejb.server.httpd,org.apache.openejb,org.apache.catalina.core,org.apache.openejb.spi,javax.naming,javax.servlet,org.apache.catalina.startup,org.apache.openejb.server,org.apache.openejb.server.ejbd,javax.persistence,org.apache.openejb.core,javax.transaction,org.apache.openejb.core.ivm.naming,org.apache.openejb.util,org.apache.openejb.persistence,org.apache.catalina.valves,org.apache.openejb.tomcat.installer,org.apache.openejb.jee.oejb3,org.apache.catalina.deploy,org.omg.CORBA,org.apache.xbean.finder,org.apache.openejb.core.security,org.apache.openejb.assembler.dynamic,org.apache.openejb.server.webservices,org.apache.openejb.loader,org.apache.openejb.tomcat.common,org.apache.openejb.jee,org.apache.openejb.assembler.classic,javax.security.auth,org.apache.catalina.connector,org.apache.catalina.authenticator'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.authenticator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.authenticator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.connector)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.connector
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.deploy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.deploy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.startup)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.startup
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.valves)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.valves
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.dynamic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.dynamic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb3)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb3 ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.persistence)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.persistence ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.ejbd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.ejbd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.catalina)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.catalina ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.common)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.common ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.installer)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.installer ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-catalina/3.0.1' presentationname='openejb-tomcat-catalina' symbolicname='org.apache.openejb.openejb-tomcat-catalina' uri='../org/apache/openejb/openejb-tomcat-catalina/3.0.1/openejb-tomcat-catalina-3.0.1.jar' version='3.0.1'>
  <description>
    This module contains the classes that will be added to the
    
    
    
    
    
    
    
    
    
    
    
     catalina
    
     class
     loader
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    78204
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-catalina'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-catalina'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.catalina'/>
    <p n='uses' v='org.apache.catalina,javax.security.auth.login,org.apache.openejb.config,javax.ejb.spi,javax.xml.namespace,org.apache.openejb.core.webservices,org.apache.naming,org.apache.openejb.server.httpd,org.apache.openejb,org.apache.catalina.core,org.apache.openejb.spi,javax.naming,javax.servlet,org.apache.catalina.startup,org.apache.openejb.server,org.apache.openejb.server.ejbd,javax.persistence,org.apache.openejb.core,javax.transaction,org.apache.openejb.core.ivm.naming,org.apache.openejb.util,org.apache.openejb.persistence,org.apache.catalina.valves,org.apache.openejb.tomcat.installer,org.apache.openejb.jee.oejb3,org.apache.catalina.deploy,org.apache.xbean.finder,org.omg.CORBA,org.apache.openejb.core.security,org.apache.openejb.assembler.dynamic,org.apache.openejb.server.webservices,org.apache.openejb.loader,org.apache.openejb.tomcat.common,org.apache.openejb.jee,org.apache.openejb.assembler.classic,javax.security.auth,org.apache.catalina.connector,org.apache.catalina.authenticator'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.authenticator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.authenticator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.connector)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.connector
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.deploy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.deploy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.startup)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.startup
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.valves)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.valves
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.dynamic)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.dynamic ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb3)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb3 ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.persistence)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.persistence ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.ejbd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.ejbd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.catalina)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.catalina ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.common)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.common ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.installer)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.installer ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-catalina/3.0.0' presentationname='openejb-tomcat-catalina' symbolicname='org.apache.openejb.openejb-tomcat-catalina' uri='../org/apache/openejb/openejb-tomcat-catalina/3.0/openejb-tomcat-catalina-3.0.jar' version='3.0.0'>
  <description>
    This module contains the classes that will be added to the
    
    
    
    
    
    
    
    
    
    
    
     catalina
    
     class
     loader
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    78298
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-catalina'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-catalina'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.catalina'/>
    <p n='uses' v='org.apache.catalina,javax.security.auth.login,org.apache.openejb.config,javax.ejb.spi,javax.xml.namespace,org.apache.openejb.core.webservices,org.apache.naming,org.apache.openejb.server.httpd,org.apache.openejb,org.apache.catalina.core,org.apache.openejb.spi,javax.naming,javax.servlet,org.apache.catalina.startup,org.apache.openejb.server,org.apache.openejb.server.ejbd,javax.persistence,org.apache.openejb.core,javax.transaction,org.apache.openejb.core.ivm.naming,org.apache.openejb.util,org.apache.openejb.persistence,org.apache.catalina.valves,org.apache.openejb.tomcat.installer,org.apache.openejb.jee.oejb3,org.apache.catalina.deploy,org.apache.xbean.finder,org.omg.CORBA,org.apache.openejb.core.security,org.apache.openejb.assembler.dynamic,org.apache.openejb.server.webservices,org.apache.openejb.loader,org.apache.openejb.tomcat.common,org.apache.openejb.jee,org.apache.openejb.assembler.classic,javax.security.auth,org.apache.catalina.connector,org.apache.catalina.authenticator'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.authenticator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.authenticator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.connector)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.connector
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.deploy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.deploy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.startup)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.startup
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.valves)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.valves
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.dynamic)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.dynamic ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb3)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb3 ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.persistence)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.persistence ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.ejbd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.ejbd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.catalina)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.catalina ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.common)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.common ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.installer)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.installer ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.4.0.r636442))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.4.0.r636442
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-catalina/3.1.0' presentationname='openejb-tomcat-catalina' symbolicname='org.apache.openejb.openejb-tomcat-catalina' uri='../org/apache/openejb/openejb-tomcat-catalina/3.1/openejb-tomcat-catalina-3.1.jar' version='3.1.0'>
  <description>
    This module contains the classes that will be added to the
    
    
    
    
    
    
    
    
    
    
    
     catalina
    
     class
     loader
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    79170
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-catalina'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-catalina'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.catalina'/>
    <p n='uses' v='org.apache.catalina,javax.security.auth.login,org.apache.openejb.config,javax.ejb.spi,javax.xml.namespace,org.apache.openejb.core.webservices,org.apache.naming,org.apache.openejb.server.httpd,org.apache.openejb,org.apache.catalina.core,org.apache.openejb.spi,javax.naming,javax.servlet,org.apache.catalina.startup,org.apache.openejb.server,org.apache.openejb.server.ejbd,javax.persistence,org.apache.openejb.core,javax.transaction,org.apache.openejb.core.ivm.naming,org.apache.openejb.util,org.apache.openejb.persistence,org.apache.catalina.valves,org.apache.openejb.tomcat.installer,org.apache.openejb.jee.oejb3,org.apache.catalina.deploy,org.omg.CORBA,org.apache.openejb.core.security,org.apache.openejb.finder,org.apache.openejb.assembler.dynamic,org.apache.openejb.server.webservices,org.apache.openejb.loader,org.apache.openejb.tomcat.common,org.apache.openejb.jee,org.apache.openejb.assembler.classic,javax.security.auth,org.apache.catalina.connector,org.apache.catalina.authenticator'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.authenticator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.authenticator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.connector)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.connector
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.deploy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.deploy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.startup)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.startup
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.valves)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.valves
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.dynamic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.dynamic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.finder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.finder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb3)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb3 ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.persistence)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.persistence ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.ejbd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.ejbd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.catalina)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.catalina ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.common)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.common ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.installer)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.installer ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
</resource>
<resource id='org.apache.openejb.openejb-multicast/3.1.0' presentationname='openejb-multicast' symbolicname='org.apache.openejb.openejb-multicast' uri='../org/apache/openejb/openejb-multicast/3.1/openejb-multicast-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    27514
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-multicast'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-multicast'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.discovery'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.server'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.discovery)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.discovery ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-multicast/3.1.1' presentationname='openejb-multicast' symbolicname='org.apache.openejb.openejb-multicast' uri='../org/apache/openejb/openejb-multicast/3.1.1/openejb-multicast-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    27680
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-multicast'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-multicast'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.discovery'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.server,org.apache.openejb.loader'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.discovery)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.discovery ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-corba/3.0.0' presentationname='openejb-corba' symbolicname='org.apache.openejb.openejb-corba' uri='../org/apache/openejb/openejb-corba/3.0/openejb-corba-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    9818
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-corba'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-corba'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-corba/3.0.0.beta-2' presentationname='openejb-corba' symbolicname='org.apache.openejb.openejb-corba' uri='../org/apache/openejb/openejb-corba/3.0-beta-2/openejb-corba-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    9933
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-corba'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-corba'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-corba/3.0.1' presentationname='openejb-corba' symbolicname='org.apache.openejb.openejb-corba' uri='../org/apache/openejb/openejb-corba/3.0.1/openejb-corba-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    9713
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-corba'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-corba'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-corba/3.1.0' presentationname='openejb-corba' symbolicname='org.apache.openejb.openejb-corba' uri='../org/apache/openejb/openejb-corba/3.1/openejb-corba-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    9888
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-corba'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-corba'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-corba/3.1.1' presentationname='openejb-corba' symbolicname='org.apache.openejb.openejb-corba' uri='../org/apache/openejb/openejb-corba/3.1.1/openejb-corba-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10019
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-corba'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-corba'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-itests-beans/3.1.0' presentationname='openejb-itests-beans' symbolicname='org.apache.openejb.openejb-itests-beans' uri='../org/apache/openejb/openejb-itests-beans/3.1/openejb-itests-beans-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    352678
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-beans'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-beans'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.interceptor'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test,javax.annotation,javax.interceptor'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.ejbql'/>
    <p n='uses' v='javax.ejb'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.onetoone'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,javax.annotation,junit.framework,javax.interceptor'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.onetomany'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.singleton'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,org.apache.openejb.test,javax.interceptor,javax.sql,org.apache.openejb.test.entity.bmp,javax.ejb,javax.naming,org.apache.openejb.test.stateful,javax.annotation,junit.framework,javax.persistence,javax.rmi,javax.transaction,org.apache.openejb.test.object,javax.jms,org.apache.openejb.test.beans'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.bmp'/>
    <p n='uses' v='org.apache.openejb.test,javax.sql,javax.ejb,org.apache.openejb.test.stateless,javax.naming,org.apache.openejb.test.stateful,junit.framework,javax.persistence,javax.rmi,javax.transaction,javax.jms,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateless'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,org.apache.openejb.test,javax.interceptor,javax.sql,org.apache.openejb.test.entity.bmp,javax.ejb,javax.naming,org.apache.openejb.test.stateful,javax.annotation,junit.framework,javax.persistence,javax.rmi,javax.transaction,org.apache.openejb.test.object,javax.jms,org.apache.openejb.test.beans'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.manytomany'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateful'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,org.apache.openejb.test,javax.interceptor,javax.sql,org.apache.openejb.test.entity.bmp,org.apache.openejb.test.stateless,javax.ejb,javax.naming,javax.annotation,javax.persistence,junit.framework,javax.rmi,javax.transaction,org.apache.openejb.test.object,javax.jms'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp2'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.mdb'/>
    <p n='uses' v='org.apache.openejb.test,javax.interceptor,javax.sql,org.apache.openejb.test.stateless,org.apache.openejb.test.entity.bmp,javax.ejb,javax.naming,org.apache.openejb.test.stateful,javax.annotation,javax.persistence,junit.framework,javax.rmi,javax.transaction,org.apache.openejb.test.object,javax.jms'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity'/>
    <p n='uses' v='javax.persistence'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.cmrmapping'/>
    <p n='uses' v='javax.ejb'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.object'/>
    <p n='uses' v='javax.transaction'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.beans'/>
    <p n='uses' v='javax.ejb,javax.naming,javax.transaction,javax.sql'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp'/>
    <p n='uses' v='org.apache.openejb.test,javax.sql,javax.ejb,org.apache.openejb.test.stateless,javax.naming,org.apache.openejb.test.stateful,junit.framework,javax.persistence,javax.rmi,javax.transaction,javax.jms,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.beans)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.beans ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.bmp)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.bmp ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp2)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp2 ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.cmrmapping)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.cmrmapping
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.manytomany)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.manytomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetomany)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetoone)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetoone
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.ejbql)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.ejbql ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.interceptor)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.interceptor ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.mdb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.mdb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.object)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.object ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.singleton)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.singleton ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless ;version=3.1.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-itests-beans/3.1.1' presentationname='openejb-itests-beans' symbolicname='org.apache.openejb.openejb-itests-beans' uri='../org/apache/openejb/openejb-itests-beans/3.1.1/openejb-itests-beans-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    355094
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-beans'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-beans'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.ejbql'/>
    <p n='uses' v='javax.ejb'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.interceptor'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test,javax.annotation,javax.interceptor'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.onetoone'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,javax.annotation,junit.framework,javax.interceptor'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.onetomany'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.singleton'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,org.apache.openejb.test,javax.interceptor,javax.sql,org.apache.openejb.test.entity.bmp,javax.ejb,javax.naming,org.apache.openejb.test.stateful,javax.annotation,junit.framework,javax.persistence,javax.rmi,javax.transaction,org.apache.openejb.test.object,javax.jms,org.apache.openejb.test.beans'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.bmp'/>
    <p n='uses' v='org.apache.openejb.test,javax.sql,javax.ejb,org.apache.openejb.test.stateless,javax.naming,org.apache.openejb.test.stateful,junit.framework,javax.persistence,javax.rmi,javax.transaction,javax.jms,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateless'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,org.apache.openejb.test,javax.interceptor,javax.sql,org.apache.openejb.test.entity.bmp,javax.ejb,javax.naming,org.apache.openejb.test.stateful,org.apache.openejb.test.annotations,javax.annotation,junit.framework,javax.persistence,javax.rmi,javax.transaction,org.apache.openejb.test.object,javax.jms,org.apache.openejb.test.beans'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.manytomany'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateful'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,org.apache.openejb.test,javax.interceptor,javax.sql,org.apache.openejb.test.entity.bmp,org.apache.openejb.test.stateless,javax.ejb,javax.naming,javax.annotation,javax.persistence,junit.framework,javax.rmi,javax.transaction,org.apache.openejb.test.object,javax.jms'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.annotations'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.mdb'/>
    <p n='uses' v='org.apache.openejb.test,javax.interceptor,javax.sql,org.apache.openejb.test.stateless,org.apache.openejb.test.entity.bmp,javax.ejb,javax.naming,org.apache.openejb.test.stateful,javax.annotation,javax.persistence,junit.framework,javax.rmi,javax.transaction,org.apache.openejb.test.object,javax.jms'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp2'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity'/>
    <p n='uses' v='javax.persistence'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.cmrmapping'/>
    <p n='uses' v='javax.ejb'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.object'/>
    <p n='uses' v='javax.transaction'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.beans'/>
    <p n='uses' v='javax.ejb,javax.naming,javax.transaction,javax.sql'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp'/>
    <p n='uses' v='org.apache.openejb.test,javax.sql,javax.ejb,org.apache.openejb.test.stateless,javax.naming,org.apache.openejb.test.stateful,junit.framework,javax.persistence,javax.rmi,javax.transaction,javax.jms,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.annotations)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.annotations ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.beans)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.beans ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.bmp)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.bmp ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp2)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp2 ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.cmrmapping)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.cmrmapping
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.manytomany)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.manytomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetomany)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetoone)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetoone
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.ejbql)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.ejbql ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.interceptor)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.interceptor ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.mdb)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.mdb ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.object)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.object ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.singleton)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.singleton ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless ;version=3.1.1
  </require>
</resource>
<resource id='org.apache.openejb.openejb-itests-beans/3.0.0' presentationname='openejb-itests-beans' symbolicname='org.apache.openejb.openejb-itests-beans' uri='../org/apache/openejb/openejb-itests-beans/3.0/openejb-itests-beans-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    300803
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-beans'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-beans'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.interceptor'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test,javax.annotation,javax.interceptor'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.ejbql'/>
    <p n='uses' v='javax.ejb'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.onetoone'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,javax.annotation,junit.framework,javax.interceptor'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.onetomany'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.bmp'/>
    <p n='uses' v='org.apache.openejb.test,javax.sql,javax.ejb,org.apache.openejb.test.stateless,javax.naming,org.apache.openejb.test.stateful,junit.framework,javax.persistence,javax.rmi,javax.transaction,javax.jms,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateless'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,org.apache.openejb.test,javax.interceptor,javax.sql,org.apache.openejb.test.entity.bmp,javax.ejb,javax.naming,org.apache.openejb.test.stateful,javax.annotation,junit.framework,javax.persistence,javax.rmi,javax.transaction,org.apache.openejb.test.object,javax.jms,org.apache.openejb.test.beans'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.manytomany'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateful'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,org.apache.openejb.test,javax.interceptor,javax.sql,org.apache.openejb.test.entity.bmp,org.apache.openejb.test.stateless,javax.ejb,javax.naming,javax.annotation,javax.persistence,junit.framework,javax.rmi,javax.transaction,org.apache.openejb.test.object,javax.jms'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp2'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.mdb'/>
    <p n='uses' v='org.apache.openejb.test,javax.interceptor,javax.sql,org.apache.openejb.test.stateless,org.apache.openejb.test.entity.bmp,javax.ejb,javax.naming,org.apache.openejb.test.stateful,javax.annotation,javax.persistence,junit.framework,javax.rmi,javax.transaction,org.apache.openejb.test.object,javax.jms'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity'/>
    <p n='uses' v='javax.persistence'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.cmrmapping'/>
    <p n='uses' v='javax.ejb'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.object'/>
    <p n='uses' v='javax.transaction'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.beans'/>
    <p n='uses' v='javax.ejb,javax.naming,javax.transaction,javax.sql'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp'/>
    <p n='uses' v='org.apache.openejb.test,javax.sql,javax.ejb,org.apache.openejb.test.stateless,javax.naming,org.apache.openejb.test.stateful,junit.framework,javax.persistence,javax.rmi,javax.transaction,javax.jms,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.beans)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.beans ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.bmp)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.bmp ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp2)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp2 ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.cmrmapping)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.cmrmapping
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.manytomany)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.manytomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetomany)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetoone)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetoone
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.ejbql)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.ejbql ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.interceptor)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.interceptor ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.mdb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.mdb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.object)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.object ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless ;version=3.0.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-itests-beans/3.0.0.beta-2' presentationname='openejb-itests-beans' symbolicname='org.apache.openejb.openejb-itests-beans' uri='../org/apache/openejb/openejb-itests-beans/3.0-beta-2/openejb-itests-beans-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    300149
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-beans'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-beans'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.interceptor'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test,javax.annotation,javax.interceptor'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.ejbql'/>
    <p n='uses' v='javax.ejb'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.onetoone'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,javax.annotation,junit.framework,javax.interceptor'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.onetomany'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.bmp'/>
    <p n='uses' v='org.apache.openejb.test,javax.sql,javax.ejb,org.apache.openejb.test.stateless,javax.naming,org.apache.openejb.test.stateful,junit.framework,javax.persistence,javax.rmi,javax.transaction,javax.jms,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateless'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,org.apache.openejb.test,javax.interceptor,javax.sql,org.apache.openejb.test.entity.bmp,javax.ejb,javax.naming,org.apache.openejb.test.stateful,javax.annotation,junit.framework,javax.persistence,javax.rmi,javax.transaction,org.apache.openejb.test.object,javax.jms,org.apache.openejb.test.beans'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.manytomany'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateful'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,org.apache.openejb.test,javax.interceptor,javax.sql,org.apache.openejb.test.entity.bmp,org.apache.openejb.test.stateless,javax.ejb,javax.naming,javax.annotation,javax.persistence,junit.framework,javax.rmi,javax.transaction,org.apache.openejb.test.object,javax.jms'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp2'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.mdb'/>
    <p n='uses' v='org.apache.openejb.test,javax.interceptor,javax.sql,org.apache.openejb.test.stateless,org.apache.openejb.test.entity.bmp,javax.ejb,javax.naming,org.apache.openejb.test.stateful,javax.annotation,javax.persistence,junit.framework,javax.rmi,javax.transaction,org.apache.openejb.test.object,javax.jms'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity'/>
    <p n='uses' v='javax.persistence'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.cmrmapping'/>
    <p n='uses' v='javax.ejb'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.object'/>
    <p n='uses' v='javax.transaction'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.beans'/>
    <p n='uses' v='javax.ejb,javax.naming,javax.transaction,javax.sql'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp'/>
    <p n='uses' v='org.apache.openejb.test,javax.sql,javax.ejb,org.apache.openejb.test.stateless,javax.naming,org.apache.openejb.test.stateful,junit.framework,javax.persistence,javax.rmi,javax.transaction,javax.jms,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.beans)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.beans ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.bmp)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.bmp ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp2)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp2 ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.cmrmapping)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.cmrmapping
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.manytomany)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.manytomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetomany)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetoone)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetoone
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.ejbql)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.ejbql ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.interceptor)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.interceptor ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.mdb)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.mdb ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.object)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.object ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless ;version=3.0.0.beta-2
  </require>
</resource>
<resource id='org.apache.openejb.openejb-itests-beans/3.0.1' presentationname='openejb-itests-beans' symbolicname='org.apache.openejb.openejb-itests-beans' uri='../org/apache/openejb/openejb-itests-beans/3.0.1/openejb-itests-beans-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    302299
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-beans'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-beans'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.ejbql'/>
    <p n='uses' v='javax.ejb'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.interceptor'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test,javax.annotation,javax.interceptor'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.onetoone'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,javax.annotation,junit.framework,javax.interceptor'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.onetomany'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.bmp'/>
    <p n='uses' v='org.apache.openejb.test,javax.sql,javax.ejb,org.apache.openejb.test.stateless,javax.naming,org.apache.openejb.test.stateful,junit.framework,javax.persistence,javax.rmi,javax.transaction,javax.jms,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateless'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,org.apache.openejb.test,javax.interceptor,javax.sql,org.apache.openejb.test.entity.bmp,javax.ejb,javax.naming,org.apache.openejb.test.stateful,org.apache.openejb.test.annotations,javax.annotation,junit.framework,javax.persistence,javax.rmi,javax.transaction,org.apache.openejb.test.object,javax.jms,org.apache.openejb.test.beans'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.manytomany'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.test.entity.cmr'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateful'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,org.apache.openejb.test,javax.interceptor,javax.sql,org.apache.openejb.test.entity.bmp,org.apache.openejb.test.stateless,javax.ejb,javax.naming,javax.annotation,javax.persistence,junit.framework,javax.rmi,javax.transaction,org.apache.openejb.test.object,javax.jms'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.annotations'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp2'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.mdb'/>
    <p n='uses' v='org.apache.openejb.test,javax.interceptor,javax.sql,org.apache.openejb.test.stateless,org.apache.openejb.test.entity.bmp,javax.ejb,javax.naming,org.apache.openejb.test.stateful,javax.annotation,javax.persistence,junit.framework,javax.rmi,javax.transaction,org.apache.openejb.test.object,javax.jms'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity'/>
    <p n='uses' v='javax.persistence'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr.cmrmapping'/>
    <p n='uses' v='javax.ejb'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.object'/>
    <p n='uses' v='javax.transaction'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.beans'/>
    <p n='uses' v='javax.ejb,javax.naming,javax.transaction,javax.sql'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp'/>
    <p n='uses' v='org.apache.openejb.test,javax.sql,javax.ejb,org.apache.openejb.test.stateless,javax.naming,org.apache.openejb.test.stateful,junit.framework,javax.persistence,javax.rmi,javax.transaction,javax.jms,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.annotations)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.annotations ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.beans)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.beans ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.bmp)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.bmp ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp2)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp2 ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.cmrmapping)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.cmrmapping
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.manytomany)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.manytomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetomany)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetoone)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetoone
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.ejbql)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.ejbql ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.interceptor)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.interceptor ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.mdb)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.mdb ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.object)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.object ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless ;version=3.0.1
  </require>
</resource>
<resource id='org.apache.openejb.openejb-loader/3.0.0' presentationname='openejb-loader' symbolicname='org.apache.openejb.openejb-loader' uri='../org/apache/openejb/openejb-loader/3.0/openejb-loader-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    34018
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-loader'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-loader'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.loader'/>
    <p n='uses' v='sun.misc'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.openejb.openejb-loader/3.1.1' presentationname='openejb-loader' symbolicname='org.apache.openejb.openejb-loader' uri='../org/apache/openejb/openejb-loader/3.1.1/openejb-loader-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    41511
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-loader'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-loader'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.loader'/>
    <p n='uses' v='sun.misc'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.openejb.openejb-loader/3.0.1' presentationname='openejb-loader' symbolicname='org.apache.openejb.openejb-loader' uri='../org/apache/openejb/openejb-loader/3.0.1/openejb-loader-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    34018
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-loader'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-loader'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.loader'/>
    <p n='uses' v='sun.misc'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.openejb.openejb-loader/3.0.0.beta-2' presentationname='openejb-loader' symbolicname='org.apache.openejb.openejb-loader' uri='../org/apache/openejb/openejb-loader/3.0-beta-2/openejb-loader-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    41170
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-loader'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-loader'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.loader'/>
    <p n='uses' v='javax.servlet.http,org.apache.catalina,sun.misc,org.apache.catalina.core,javax.servlet'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.catalina
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.catalina.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.openejb.openejb-loader/3.1.0' presentationname='openejb-loader' symbolicname='org.apache.openejb.openejb-loader' uri='../org/apache/openejb/openejb-loader/3.1/openejb-loader-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    34063
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-loader'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-loader'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.loader'/>
    <p n='uses' v='sun.misc'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.openejb.xbean-asm-shaded/3.6.0.r779512' presentationname='xbean-asm-shaded' symbolicname='org.apache.openejb.xbean-asm-shaded' uri='../org/apache/openejb/xbean-asm-shaded/3.6-r779512/xbean-asm-shaded-3.6-r779512.jar' version='3.6.0.r779512'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    123396
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-asm-shaded'/>
    <p n='symbolicname' v='org.apache.openejb.xbean-asm-shaded'/>
    <p n='version' t='version' v='3.6.0.r779512'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-itests-interceptor-beans/3.0.1' presentationname='openejb-itests-interceptor-beans' symbolicname='org.apache.openejb.openejb-itests-interceptor-beans' uri='../org/apache/openejb/openejb-itests-interceptor-beans/3.0.1/openejb-itests-interceptor-beans-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18675
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-interceptor-beans'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-interceptor-beans'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateless'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,javax.ejb,org.apache.openejb.test,javax.annotation,javax.interceptor'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateful'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,javax.ejb,org.apache.openejb.test,javax.annotation,javax.interceptor'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.interceptor)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.interceptor ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless ;version=3.0.1
  </require>
</resource>
<resource id='org.apache.openejb.openejb-itests-interceptor-beans/3.1.0' presentationname='openejb-itests-interceptor-beans' symbolicname='org.apache.openejb.openejb-itests-interceptor-beans' uri='../org/apache/openejb/openejb-itests-interceptor-beans/3.1/openejb-itests-interceptor-beans-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18753
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-interceptor-beans'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-interceptor-beans'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateless'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,javax.ejb,org.apache.openejb.test,javax.annotation,javax.interceptor'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateful'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,javax.ejb,org.apache.openejb.test,javax.annotation,javax.interceptor'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.interceptor)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.interceptor ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless ;version=3.1.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-itests-interceptor-beans/3.1.1' presentationname='openejb-itests-interceptor-beans' symbolicname='org.apache.openejb.openejb-itests-interceptor-beans' uri='../org/apache/openejb/openejb-itests-interceptor-beans/3.1.1/openejb-itests-interceptor-beans-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18769
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-interceptor-beans'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-interceptor-beans'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateless'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,javax.ejb,org.apache.openejb.test,javax.annotation,javax.interceptor'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateful'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,javax.ejb,org.apache.openejb.test,javax.annotation,javax.interceptor'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.interceptor)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.interceptor ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless ;version=3.1.1
  </require>
</resource>
<resource id='org.apache.openejb.openejb-itests-interceptor-beans/3.0.0' presentationname='openejb-itests-interceptor-beans' symbolicname='org.apache.openejb.openejb-itests-interceptor-beans' uri='../org/apache/openejb/openejb-itests-interceptor-beans/3.0/openejb-itests-interceptor-beans-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18668
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-interceptor-beans'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-interceptor-beans'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateless'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,javax.ejb,org.apache.openejb.test,javax.annotation,javax.interceptor'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateful'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,javax.ejb,org.apache.openejb.test,javax.annotation,javax.interceptor'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.interceptor)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.interceptor ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless ;version=3.0.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-itests-interceptor-beans/3.0.0.beta-2' presentationname='openejb-itests-interceptor-beans' symbolicname='org.apache.openejb.openejb-itests-interceptor-beans' uri='../org/apache/openejb/openejb-itests-interceptor-beans/3.0-beta-2/openejb-itests-interceptor-beans-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19404
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-interceptor-beans'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-interceptor-beans'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateless'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,javax.ejb,org.apache.openejb.test,javax.annotation,javax.interceptor'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateful'/>
    <p n='uses' v='org.apache.openejb.test.interceptor,javax.ejb,org.apache.openejb.test,javax.annotation,javax.interceptor'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.interceptor)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.interceptor ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless ;version=3.0.0.beta-2
  </require>
</resource>
<resource id='org.apache.openejb.openejb-hsql/3.1.1' presentationname='openejb-hsql' symbolicname='org.apache.openejb.openejb-hsql' uri='../org/apache/openejb/openejb-hsql/3.1.1/openejb-hsql-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16019
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-hsql'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-hsql'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.hsql'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.resource.jdbc,org.apache.commons.dbcp,org.apache.openejb.spi,javax.naming,org.apache.openejb.server,org.hsqldb.persist,org.apache.openejb.loader,org.hsqldb'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.dbcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource.jdbc)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource.jdbc ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.hsql)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.hsql ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hsqldb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hsqldb
  </require>
  <require extend='false' filter='(&amp;(package=org.hsqldb.persist)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hsqldb.persist
  </require>
</resource>
<resource id='org.apache.openejb.openejb-hsql/3.0.1' presentationname='openejb-hsql' symbolicname='org.apache.openejb.openejb-hsql' uri='../org/apache/openejb/openejb-hsql/3.0.1/openejb-hsql-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16221
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-hsql'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-hsql'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.hsql'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.resource.jdbc,org.apache.commons.dbcp,org.apache.openejb.spi,javax.naming,org.apache.openejb.server,org.hsqldb.persist,org.apache.openejb.loader,org.hsqldb'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.dbcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource.jdbc)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource.jdbc ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.hsql)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.hsql ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hsqldb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hsqldb
  </require>
  <require extend='false' filter='(&amp;(package=org.hsqldb.persist)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hsqldb.persist
  </require>
</resource>
<resource id='org.apache.openejb.openejb-hsql/3.1.0' presentationname='openejb-hsql' symbolicname='org.apache.openejb.openejb-hsql' uri='../org/apache/openejb/openejb-hsql/3.1/openejb-hsql-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15885
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-hsql'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-hsql'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.hsql'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.resource.jdbc,org.apache.commons.dbcp,org.apache.openejb.spi,javax.naming,org.apache.openejb.server,org.hsqldb.persist,org.apache.openejb.loader,org.hsqldb'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.dbcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource.jdbc)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource.jdbc ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.hsql)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.hsql ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hsqldb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hsqldb
  </require>
  <require extend='false' filter='(&amp;(package=org.hsqldb.persist)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hsqldb.persist
  </require>
</resource>
<resource id='org.apache.openejb.openejb-hsql/3.0.0' presentationname='openejb-hsql' symbolicname='org.apache.openejb.openejb-hsql' uri='../org/apache/openejb/openejb-hsql/3.0/openejb-hsql-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16318
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-hsql'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-hsql'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.hsql'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.resource.jdbc,org.apache.commons.dbcp,org.apache.openejb.spi,javax.naming,org.apache.openejb.server,org.hsqldb.persist,org.apache.openejb.loader,org.hsqldb'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.dbcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource.jdbc)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource.jdbc ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.hsql)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.hsql ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hsqldb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hsqldb
  </require>
  <require extend='false' filter='(&amp;(package=org.hsqldb.persist)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hsqldb.persist
  </require>
</resource>
<resource id='org.apache.openejb.openejb-hsql/3.0.0.beta-2' presentationname='openejb-hsql' symbolicname='org.apache.openejb.openejb-hsql' uri='../org/apache/openejb/openejb-hsql/3.0-beta-2/openejb-hsql-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16373
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-hsql'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-hsql'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.hsql'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.resource.jdbc,org.apache.commons.dbcp,org.apache.openejb.spi,javax.naming,org.apache.openejb.server,org.hsqldb.persist,org.apache.openejb.loader,org.hsqldb'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.dbcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource.jdbc)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource.jdbc ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.hsql)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.hsql ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.hsqldb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hsqldb
  </require>
  <require extend='false' filter='(&amp;(package=org.hsqldb.persist)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hsqldb.persist
  </require>
</resource>
<resource id='org.apache.openejb.openejb-cxf/3.0.0.beta-2' presentationname='openejb-cxf' symbolicname='org.apache.openejb.openejb-cxf' uri='../org/apache/openejb/openejb-cxf/3.0-beta-2/openejb-cxf-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    53055
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-cxf'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-cxf'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf.client'/>
    <p n='uses' v='org.apache.openejb.server.webservices.saaj,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.phase,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf'/>
    <p n='uses' v='javax.xml.ws.handler,javax.servlet.http,org.apache.openejb.server.webservices.saaj,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.jaxws,org.apache.cxf.catalog,javax.xml.namespace,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.openejb.server.httpd,org.apache.cxf.service.factory,org.apache.cxf.message,org.apache.cxf.jaxws.support,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.transport.http,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.wsdl,javax.xml.ws.soap,org.apache.openejb.util,org.apache.cxf.endpoint,org.apache.openejb.server.cxf.client,org.apache.openejb.server.cxf.pojo,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.openejb.server.cxf.ejb,org.apache.cxf.tools.util,org.apache.cxf.transport,javax.wsdl.extensions,org.apache.openejb.server.webservices,org.apache.cxf.bus.resource,org.apache.xml.resolver,org.apache.cxf.jaxws.handler,org.apache.cxf,org.apache.cxf.security'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf.pojo'/>
    <p n='uses' v='org.apache.cxf.jaxws,org.apache.cxf.service.invoker,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.cxf.jaxws.support,javax.naming,org.apache.openejb.server.cxf,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf.ejb'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.service.invoker,org.apache.cxf.jaxws.context,javax.interceptor,org.apache.openejb.core.webservices,org.apache.cxf.phase,org.apache.openejb,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,javax.naming,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.openejb.util,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.openejb.server.cxf,org.apache.cxf.binding.soap.saaj,org.apache.cxf,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf.client)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf.client ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf.ejb)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf.ejb ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf.pojo)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf.pojo ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http
  </require>
</resource>
<resource id='org.apache.openejb.openejb-cxf/3.1.0' presentationname='openejb-cxf' symbolicname='org.apache.openejb.openejb-cxf' uri='../org/apache/openejb/openejb-cxf/3.1/openejb-cxf-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    52688
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-cxf'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-cxf'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf.client'/>
    <p n='uses' v='org.apache.openejb.server.webservices.saaj,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.phase,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf'/>
    <p n='uses' v='javax.xml.ws.handler,javax.servlet.http,org.apache.openejb.server.webservices.saaj,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.jaxws,org.apache.cxf.catalog,javax.xml.namespace,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.openejb.server.httpd,org.apache.cxf.service.factory,org.apache.cxf.message,org.apache.cxf.jaxws.support,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.transport.http,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.wsdl,javax.xml.ws.soap,org.apache.openejb.util,org.apache.cxf.endpoint,org.apache.openejb.server.cxf.client,org.apache.openejb.server.cxf.pojo,org.w3c.dom,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.openejb.server.cxf.ejb,org.apache.cxf.tools.util,org.apache.cxf.transport,javax.wsdl.extensions,org.apache.openejb.server.webservices,org.apache.cxf.bus.resource,org.apache.xml.resolver,org.apache.cxf.jaxws.handler,org.apache.cxf,org.apache.cxf.security'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf.pojo'/>
    <p n='uses' v='org.apache.cxf.jaxws,org.apache.cxf.service.invoker,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.cxf.jaxws.support,javax.naming,org.apache.openejb.server.cxf,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf.ejb'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.service.invoker,org.apache.cxf.jaxws.context,javax.interceptor,org.apache.openejb.core.webservices,org.apache.cxf.phase,org.apache.openejb,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,javax.naming,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.openejb.util,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.openejb.server.cxf,org.apache.cxf.binding.soap.saaj,org.apache.cxf,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf.client)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf.client ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf.ejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf.ejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf.pojo)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf.pojo ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http
  </require>
</resource>
<resource id='org.apache.openejb.openejb-cxf/3.1.1' presentationname='openejb-cxf' symbolicname='org.apache.openejb.openejb-cxf' uri='../org/apache/openejb/openejb-cxf/3.1.1/openejb-cxf-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    56068
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-cxf'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-cxf'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf.client'/>
    <p n='uses' v='org.apache.openejb.server.webservices.saaj,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.phase,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf'/>
    <p n='uses' v='javax.xml.ws.handler,javax.servlet.http,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.openejb.core.webservices,org.apache.openejb.server.httpd,org.apache.openejb,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.naming,javax.servlet,org.apache.cxf.transport.http,javax.xml.ws,org.apache.cxf.ws.security.wss4j,javax.xml.ws.soap,org.apache.openejb.util,org.apache.openejb.server.cxf.client,org.apache.cxf.endpoint,org.apache.cxf.bus.extension,org.apache.openejb.server.cxf.ejb,org.apache.cxf.tools.util,org.apache.openejb.loader,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.xml.resolver,org.apache.openejb.server.webservices.saaj,javax.security.auth.login,org.apache.cxf.catalog,org.apache.cxf.jaxws,org.apache.cxf.message,org.apache.openejb.spi,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.ws.addressing,org.apache.cxf.service,javax.security.auth.callback,javax.wsdl,org.apache.openejb.server.cxf.pojo,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.wsdl.extensions,org.apache.openejb.server.webservices,org.apache.cxf.bus.resource,org.apache.cxf,org.apache.cxf.security,org.apache.ws.security'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf.pojo'/>
    <p n='uses' v='org.apache.cxf.jaxws,org.apache.cxf.service.invoker,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.cxf.jaxws.support,javax.naming,org.apache.openejb.server.cxf,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf.ejb'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.service.invoker,org.apache.cxf.jaxws.context,javax.interceptor,org.apache.openejb.core.webservices,org.apache.cxf.phase,org.apache.openejb,org.apache.cxf.message,org.apache.cxf.jaxws.support,javax.naming,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.service,javax.xml.stream,org.apache.openejb.util,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.openejb.server.cxf,org.apache.cxf.binding.soap.saaj,org.apache.cxf'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf.client)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf.client ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf.ejb)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf.ejb ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf.pojo)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf.pojo ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http ;version=2.0.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-cxf/3.0.1' presentationname='openejb-cxf' symbolicname='org.apache.openejb.openejb-cxf' uri='../org/apache/openejb/openejb-cxf/3.0.1/openejb-cxf-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    53111
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-cxf'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-cxf'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf.client'/>
    <p n='uses' v='org.apache.openejb.server.webservices.saaj,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.phase,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf'/>
    <p n='uses' v='javax.xml.ws.handler,javax.servlet.http,org.apache.openejb.server.webservices.saaj,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.jaxws,org.apache.cxf.catalog,javax.xml.namespace,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.openejb.server.httpd,org.apache.cxf.service.factory,org.apache.cxf.message,org.apache.cxf.jaxws.support,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.transport.http,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.wsdl,javax.xml.ws.soap,org.apache.openejb.util,org.apache.cxf.endpoint,org.apache.openejb.server.cxf.client,org.apache.openejb.server.cxf.pojo,org.w3c.dom,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.openejb.server.cxf.ejb,org.apache.cxf.tools.util,org.apache.cxf.transport,javax.wsdl.extensions,org.apache.openejb.server.webservices,org.apache.cxf.bus.resource,org.apache.xml.resolver,org.apache.cxf.jaxws.handler,org.apache.cxf,org.apache.cxf.security'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf.pojo'/>
    <p n='uses' v='org.apache.cxf.jaxws,org.apache.cxf.service.invoker,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.cxf.jaxws.support,javax.naming,org.apache.openejb.server.cxf,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf.ejb'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.service.invoker,org.apache.cxf.jaxws.context,javax.interceptor,org.apache.openejb.core.webservices,org.apache.cxf.phase,org.apache.openejb,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,javax.naming,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.openejb.util,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.openejb.server.cxf,org.apache.cxf.binding.soap.saaj,org.apache.cxf,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf.client)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf.client ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf.ejb)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf.ejb ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf.pojo)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf.pojo ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http
  </require>
</resource>
<resource id='org.apache.openejb.openejb-cxf/3.0.0' presentationname='openejb-cxf' symbolicname='org.apache.openejb.openejb-cxf' uri='../org/apache/openejb/openejb-cxf/3.0/openejb-cxf-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    53227
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-cxf'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-cxf'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf.client'/>
    <p n='uses' v='org.apache.openejb.server.webservices.saaj,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.phase,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf'/>
    <p n='uses' v='javax.xml.ws.handler,javax.servlet.http,org.apache.openejb.server.webservices.saaj,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.jaxws,org.apache.cxf.catalog,javax.xml.namespace,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.openejb.server.httpd,org.apache.cxf.service.factory,org.apache.cxf.message,org.apache.cxf.jaxws.support,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.transport.http,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.wsdl,javax.xml.ws.soap,org.apache.openejb.util,org.apache.cxf.endpoint,org.apache.openejb.server.cxf.client,org.apache.openejb.server.cxf.pojo,org.w3c.dom,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.openejb.server.cxf.ejb,org.apache.cxf.tools.util,org.apache.cxf.transport,javax.wsdl.extensions,org.apache.openejb.server.webservices,org.apache.cxf.bus.resource,org.apache.xml.resolver,org.apache.cxf.jaxws.handler,org.apache.cxf,org.apache.cxf.security'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf.pojo'/>
    <p n='uses' v='org.apache.cxf.jaxws,org.apache.cxf.service.invoker,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.cxf.jaxws.support,javax.naming,org.apache.openejb.server.cxf,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.cxf.ejb'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.service.invoker,org.apache.cxf.jaxws.context,javax.interceptor,org.apache.openejb.core.webservices,org.apache.cxf.phase,org.apache.openejb,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,javax.naming,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.openejb.util,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.openejb.server.cxf,org.apache.cxf.binding.soap.saaj,org.apache.cxf,org.apache.cxf.staxutils'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf.client)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf.client ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf.ejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf.ejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.cxf.pojo)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.cxf.pojo ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http
  </require>
</resource>
<resource id='org.apache.openejb.ejb31-api-experimental/3.1.1' presentationname='ejb31-api-experimental' symbolicname='org.apache.openejb.ejb31-api-experimental' uri='../org/apache/openejb/ejb31-api-experimental/3.1.1/ejb31-api-experimental-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18843
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ejb31-api-experimental'/>
    <p n='symbolicname' v='org.apache.openejb.ejb31-api-experimental'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
</resource>
<resource id='org.apache.openejb.ejb31-api-experimental/3.1.0' presentationname='ejb31-api-experimental' symbolicname='org.apache.openejb.ejb31-api-experimental' uri='../org/apache/openejb/ejb31-api-experimental/3.1/ejb31-api-experimental-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10990
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ejb31-api-experimental'/>
    <p n='symbolicname' v='org.apache.openejb.ejb31-api-experimental'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-webapp/3.0.1' presentationname='openejb-tomcat-webapp' symbolicname='org.apache.openejb.openejb-tomcat-webapp' uri='../org/apache/openejb/openejb-tomcat-webapp/3.0.1/openejb-tomcat-webapp-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    97950
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-webapp'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-webapp'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-webapp/3.1.1' presentationname='openejb-tomcat-webapp' symbolicname='org.apache.openejb.openejb-tomcat-webapp' uri='../org/apache/openejb/openejb-tomcat-webapp/3.1.1/openejb-tomcat-webapp-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18866
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-webapp'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-webapp'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-webapp/3.0.0.beta-2' presentationname='openejb-tomcat-webapp' symbolicname='org.apache.openejb.openejb-tomcat-webapp' uri='../org/apache/openejb/openejb-tomcat-webapp/3.0-beta-2/openejb-tomcat-webapp-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    170769
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-webapp'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-webapp'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat'/>
    <p n='uses' v='org.apache.openejb.tomcat.naming,org.apache.catalina,javax.servlet.http,javax.security.auth.login,org.apache.openejb.config,javax.ejb.spi,javax.xml.namespace,org.apache.openejb.core.webservices,org.apache.naming,org.apache.openejb.server.httpd,org.apache.openejb,org.apache.catalina.core,org.apache.openejb.spi,javax.naming,javax.servlet,org.apache.catalina.startup,org.apache.openejb.server,org.apache.openejb.server.ejbd,javax.persistence,org.apache.openejb.core,javax.transaction,org.apache.openejb.core.ivm.naming,org.apache.openejb.util,org.apache.openejb.persistence,org.apache.catalina.valves,org.apache.openejb.tomcat.installer,org.apache.openejb.jee.oejb3,org.apache.catalina.deploy,org.apache.xbean.finder,org.omg.CORBA,org.apache.openejb.core.security,org.apache.openejb.assembler.dynamic,org.apache.openejb.server.webservices,org.apache.openejb.loader,org.apache.openejb.jee,org.apache.openejb.assembler.classic,javax.security.auth,org.apache.catalina.connector,org.apache.catalina.authenticator'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.installer'/>
    <p n='uses' v='org.codehaus.swizzle.stream,javax.servlet.http,javax.servlet,org.apache.openejb.loader'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.authenticator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.authenticator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.connector)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.connector
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.deploy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.deploy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.startup)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.startup
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.valves)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.valves
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.dynamic)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.dynamic ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb3)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb3 ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.persistence)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.persistence ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.ejbd)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.ejbd ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.installer)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.installer ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.naming)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.naming ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.swizzle.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.swizzle.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-webapp/3.1.0' presentationname='openejb-tomcat-webapp' symbolicname='org.apache.openejb.openejb-tomcat-webapp' uri='../org/apache/openejb/openejb-tomcat-webapp/3.1/openejb-tomcat-webapp-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17935
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-webapp'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-webapp'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-webapp/3.0.0' presentationname='openejb-tomcat-webapp' symbolicname='org.apache.openejb.openejb-tomcat-webapp' uri='../org/apache/openejb/openejb-tomcat-webapp/3.0/openejb-tomcat-webapp-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    97959
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-webapp'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-webapp'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-axis2/3.0.0.beta-2' presentationname='openejb-axis2' symbolicname='org.apache.openejb.openejb-axis2' uri='../org/apache/openejb/openejb-axis2/3.0-beta-2/openejb-axis2-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    60805
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-axis2'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-axis2'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.ejb'/>
    <p n='uses' v='org.apache.axis2.description,org.apache.axis2.engine,org.apache.axis2.context,org.apache.openejb.util,org.apache.axis2.jaxws.server.dispatcher,org.apache.axis2.jaxws.i18n,javax.xml.namespace,org.apache.axis2.jaxws.handler,org.apache.axis2.jaxws,javax.interceptor,org.apache.openejb.core.webservices,org.apache.axis2.jaxws.server,org.apache.openejb,org.apache.axis2,org.apache.openejb.server.axis2,javax.naming,org.apache.axis2.jaxws.core,org.apache.axis2.jaxws.description,org.apache.axis2.jaxws.message.util,org.apache.axis2.jaxws.message,javax.xml.ws'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.axis2.jaxws.handler.lifecycle.factory,javax.servlet.http,org.apache.axis2.engine,org.apache.axis2.context,javax.wsdl.extensions.soap,org.apache.axis2.addressing,javax.xml.namespace,org.apache.openejb.server.axis2.client,org.apache.openejb.core.webservices,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.openejb,org.apache.openejb.server.httpd,org.apache.axis2.wsdl,org.apache.openejb.server.axis2.ejb,javax.servlet,javax.naming,javax.wsdl.factory,javax.xml.transform.stream,javax.xml.ws,org.apache.openejb.util,javax.wsdl.xml,org.apache.axis2.jaxws.description.impl,org.apache.openejb.server.axis2.pojo,org.apache.axis2.jaxws.server,org.apache.openejb.server.axis2.util,org.apache.axis2.jaxws.core,javax.wsdl.extensions.http,org.apache.axis2.transport.http.util,org.apache.axis2.jaxws.injection,org.apache.openejb.server.webservices.saaj,org.apache.axis2.jaxws.description.builder,org.apache.axis2.jaxws.lifecycle,org.apache.axis2.jaxws.registry,javax.wsdl.extensions.schema,org.apache.axis2.description,javax.wsdl,org.apache.axiom.om.util,org.apache.axis2.transport.http,org.w3c.dom,org.apache.axis2.jaxws.description.builder.converter,org.apache.axis2,org.apache.axis2.util,javax.xml.transform.dom,javax.wsdl.extensions,org.apache.openejb.server.webservices,org.apache.ws.commons.schema.utils,org.apache.axis2.jaxws.description,org.apache.axis2.transport'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.pojo'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.axis2.description,javax.servlet.http,org.apache.axis2.context,org.apache.axis2.engine,org.apache.axis2.jaxws.context.utils,javax.xml.ws.handler.soap,org.apache.axis2.transport.http,org.apache.axis2.jaxws.handler,org.apache.axis2.jaxws.context.factory,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.openejb.server.httpd,org.apache.openejb.server.axis2,javax.naming,org.apache.axis2.jaxws.core,org.apache.axis2.jaxws.registry,javax.xml.ws,org.apache.axis2.jaxws.server.endpoint.lifecycle,org.apache.axis2.jaxws.server.endpoint.lifecycle.factory'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.client'/>
    <p n='uses' v='org.apache.axis2.context,org.apache.openejb.util,org.apache.axis2.jaxws.description.impl,org.apache.axis2.jaxws.util,org.apache.axis2.jaxws,org.apache.axis2.metadata.registry,org.apache.axis2'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.util'/>
    <p n='uses' v='org.apache.openejb.util,javax.wsdl.xml,org.xml.sax'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axiom.om.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axiom.om.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.description)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.description
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.engine)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.engine
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.context.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.context.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.context.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.context.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description.builder.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description.builder.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.handler.lifecycle.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.handler.lifecycle.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.injection)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.injection
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.lifecycle)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.lifecycle
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.message.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.message.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server.dispatcher)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server.dispatcher
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server.endpoint.lifecycle)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server.endpoint.lifecycle
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server.endpoint.lifecycle.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server.endpoint.lifecycle.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.metadata.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.metadata.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.transport.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.transport.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.transport.http.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.transport.http.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2 ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.client)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.client ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.ejb)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.ejb ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.pojo)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.pojo ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.util)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.util ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.openejb.openejb-axis2/3.0.0' presentationname='openejb-axis2' symbolicname='org.apache.openejb.openejb-axis2' uri='../org/apache/openejb/openejb-axis2/3.0/openejb-axis2-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    61470
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-axis2'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-axis2'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.ejb'/>
    <p n='uses' v='org.apache.axis2.description,org.apache.axis2.engine,org.apache.axis2.context,org.apache.openejb.util,org.apache.axis2.jaxws.server.dispatcher,org.apache.axis2.jaxws.i18n,javax.xml.namespace,org.apache.axis2.jaxws.handler,org.apache.axis2.jaxws,javax.interceptor,org.apache.openejb.core.webservices,org.apache.axis2.jaxws.server,org.apache.openejb,org.apache.axis2,org.apache.openejb.server.axis2,javax.naming,org.apache.axis2.jaxws.core,org.apache.axis2.jaxws.description,org.apache.axis2.jaxws.message.util,org.apache.axis2.jaxws.message,javax.xml.ws'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.axis2.jaxws.handler.lifecycle.factory,javax.servlet.http,org.apache.axis2.engine,org.apache.axis2.context,javax.wsdl.extensions.soap,org.apache.axis2.addressing,javax.xml.namespace,org.apache.openejb.server.axis2.client,org.apache.openejb.core.webservices,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.openejb,org.apache.openejb.server.httpd,org.apache.axis2.wsdl,org.apache.openejb.server.axis2.ejb,javax.servlet,javax.naming,javax.wsdl.factory,javax.xml.transform.stream,javax.xml.ws,org.apache.openejb.util,javax.wsdl.xml,org.apache.axis2.jaxws.description.impl,org.apache.openejb.server.axis2.pojo,org.apache.axis2.jaxws.server,org.apache.openejb.server.axis2.util,org.apache.axis2.jaxws.core,javax.wsdl.extensions.http,org.apache.axis2.transport.http.util,org.apache.axis2.jaxws.injection,org.apache.openejb.server.webservices.saaj,org.apache.axis2.jaxws.description.builder,org.apache.axis2.jaxws.lifecycle,org.apache.axis2.jaxws.registry,javax.wsdl.extensions.schema,org.apache.axis2.description,javax.wsdl,org.apache.axiom.om.util,org.apache.axis2.transport.http,org.w3c.dom,org.apache.axis2.jaxws.description.builder.converter,org.apache.axis2,org.apache.axis2.util,javax.xml.transform.dom,javax.wsdl.extensions,org.apache.openejb.server.webservices,org.apache.ws.commons.schema.utils,org.apache.axis2.jaxws.description,org.apache.axis2.transport'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.pojo'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.axis2.description,javax.servlet.http,org.apache.axis2.context,org.apache.axis2.engine,org.apache.axis2.jaxws.context.utils,javax.xml.ws.handler.soap,org.apache.axis2.transport.http,org.w3c.dom,org.apache.axis2.jaxws.handler,org.apache.axis2.jaxws.context.factory,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.openejb.server.httpd,org.apache.openejb.server.axis2,javax.naming,org.apache.axis2.jaxws.core,org.apache.axis2.jaxws.registry,javax.xml.ws,org.apache.axis2.jaxws.server.endpoint.lifecycle,org.apache.axis2.jaxws.server.endpoint.lifecycle.factory'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.client'/>
    <p n='uses' v='org.apache.axis2.context,org.apache.openejb.util,org.apache.axis2.jaxws.description.impl,org.apache.axis2.jaxws.util,org.apache.axis2.jaxws,org.apache.axis2.metadata.registry,org.apache.axis2'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.util'/>
    <p n='uses' v='org.apache.openejb.util,javax.wsdl.xml,org.xml.sax'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axiom.om.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axiom.om.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.description)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.description
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.engine)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.engine
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.context.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.context.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.context.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.context.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description.builder.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description.builder.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.handler.lifecycle.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.handler.lifecycle.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.injection)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.injection
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.lifecycle)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.lifecycle
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.message.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.message.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server.dispatcher)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server.dispatcher
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server.endpoint.lifecycle)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server.endpoint.lifecycle
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server.endpoint.lifecycle.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server.endpoint.lifecycle.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.metadata.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.metadata.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.transport.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.transport.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.transport.http.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.transport.http.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2 ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.client)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.client ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.ejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.ejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.pojo)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.pojo ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.openejb.openejb-axis2/3.1.0' presentationname='openejb-axis2' symbolicname='org.apache.openejb.openejb-axis2' uri='../org/apache/openejb/openejb-axis2/3.1/openejb-axis2-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    61416
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-axis2'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-axis2'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.ejb'/>
    <p n='uses' v='org.apache.axis2.description,org.apache.axis2.engine,org.apache.axis2.context,org.apache.openejb.util,org.apache.axis2.jaxws.server.dispatcher,org.apache.axis2.jaxws.i18n,javax.xml.namespace,org.apache.axis2.jaxws.handler,org.apache.axis2.jaxws,javax.interceptor,org.apache.openejb.core.webservices,org.apache.axis2.jaxws.server,org.apache.openejb,org.apache.axis2,org.apache.openejb.server.axis2,javax.naming,org.apache.axis2.jaxws.core,org.apache.axis2.jaxws.description,org.apache.axis2.jaxws.message.util,org.apache.axis2.jaxws.message,javax.xml.ws'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.axis2.jaxws.handler.lifecycle.factory,javax.servlet.http,org.apache.axis2.engine,org.apache.axis2.context,javax.wsdl.extensions.soap,org.apache.axis2.addressing,javax.xml.namespace,org.apache.openejb.server.axis2.client,org.apache.openejb.core.webservices,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.openejb,org.apache.openejb.server.httpd,org.apache.axis2.wsdl,org.apache.openejb.server.axis2.ejb,javax.servlet,javax.naming,javax.wsdl.factory,javax.xml.transform.stream,javax.xml.ws,org.apache.openejb.util,javax.wsdl.xml,org.apache.axis2.jaxws.description.impl,org.apache.openejb.server.axis2.pojo,org.apache.axis2.jaxws.server,org.apache.openejb.server.axis2.util,org.apache.axis2.jaxws.core,javax.wsdl.extensions.http,org.apache.axis2.transport.http.util,org.apache.axis2.jaxws.injection,org.apache.openejb.server.webservices.saaj,org.apache.axis2.jaxws.description.builder,org.apache.axis2.jaxws.lifecycle,org.apache.axis2.jaxws.registry,javax.wsdl.extensions.schema,org.apache.axis2.description,javax.wsdl,org.apache.axiom.om.util,org.apache.axis2.transport.http,org.w3c.dom,org.apache.axis2.jaxws.description.builder.converter,org.apache.axis2,org.apache.axis2.util,javax.xml.transform.dom,javax.wsdl.extensions,org.apache.openejb.server.webservices,org.apache.ws.commons.schema.utils,org.apache.axis2.jaxws.description,org.apache.axis2.transport'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.pojo'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.axis2.description,javax.servlet.http,org.apache.axis2.context,org.apache.axis2.engine,org.apache.axis2.jaxws.context.utils,javax.xml.ws.handler.soap,org.apache.axis2.transport.http,org.w3c.dom,org.apache.axis2.jaxws.handler,org.apache.axis2.jaxws.context.factory,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.openejb.server.httpd,org.apache.openejb.server.axis2,javax.naming,org.apache.axis2.jaxws.core,org.apache.axis2.jaxws.registry,javax.xml.ws,org.apache.axis2.jaxws.server.endpoint.lifecycle,org.apache.axis2.jaxws.server.endpoint.lifecycle.factory'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.client'/>
    <p n='uses' v='org.apache.axis2.context,org.apache.openejb.util,org.apache.axis2.jaxws.description.impl,org.apache.axis2.jaxws.util,org.apache.axis2.jaxws,org.apache.axis2.metadata.registry,org.apache.axis2'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.util'/>
    <p n='uses' v='org.apache.openejb.util,javax.wsdl.xml,org.xml.sax'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axiom.om.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axiom.om.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.description)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.description
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.engine)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.engine
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.context.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.context.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.context.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.context.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description.builder.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description.builder.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.handler.lifecycle.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.handler.lifecycle.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.injection)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.injection
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.lifecycle)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.lifecycle
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.message.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.message.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server.dispatcher)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server.dispatcher
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server.endpoint.lifecycle)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server.endpoint.lifecycle
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server.endpoint.lifecycle.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server.endpoint.lifecycle.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.metadata.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.metadata.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.transport.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.transport.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.transport.http.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.transport.http.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2 ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.client)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.client ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.ejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.ejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.pojo)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.pojo ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.openejb.openejb-axis2/3.0.1' presentationname='openejb-axis2' symbolicname='org.apache.openejb.openejb-axis2' uri='../org/apache/openejb/openejb-axis2/3.0.1/openejb-axis2-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    61372
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-axis2'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-axis2'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.ejb'/>
    <p n='uses' v='org.apache.axis2.description,org.apache.axis2.engine,org.apache.axis2.context,org.apache.openejb.util,org.apache.axis2.jaxws.server.dispatcher,org.apache.axis2.jaxws.i18n,javax.xml.namespace,org.apache.axis2.jaxws.handler,org.apache.axis2.jaxws,javax.interceptor,org.apache.openejb.core.webservices,org.apache.axis2.jaxws.server,org.apache.openejb,org.apache.axis2,org.apache.openejb.server.axis2,javax.naming,org.apache.axis2.jaxws.core,org.apache.axis2.jaxws.description,org.apache.axis2.jaxws.message.util,org.apache.axis2.jaxws.message,javax.xml.ws'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.axis2.jaxws.handler.lifecycle.factory,javax.servlet.http,org.apache.axis2.engine,org.apache.axis2.context,javax.wsdl.extensions.soap,org.apache.axis2.addressing,javax.xml.namespace,org.apache.openejb.server.axis2.client,org.apache.openejb.core.webservices,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.openejb,org.apache.openejb.server.httpd,org.apache.axis2.wsdl,org.apache.openejb.server.axis2.ejb,javax.servlet,javax.naming,javax.wsdl.factory,javax.xml.transform.stream,javax.xml.ws,org.apache.openejb.util,javax.wsdl.xml,org.apache.axis2.jaxws.description.impl,org.apache.openejb.server.axis2.pojo,org.apache.axis2.jaxws.server,org.apache.openejb.server.axis2.util,org.apache.axis2.jaxws.core,javax.wsdl.extensions.http,org.apache.axis2.transport.http.util,org.apache.axis2.jaxws.injection,org.apache.openejb.server.webservices.saaj,org.apache.axis2.jaxws.description.builder,org.apache.axis2.jaxws.lifecycle,org.apache.axis2.jaxws.registry,javax.wsdl.extensions.schema,org.apache.axis2.description,javax.wsdl,org.apache.axiom.om.util,org.apache.axis2.transport.http,org.w3c.dom,org.apache.axis2.jaxws.description.builder.converter,org.apache.axis2,org.apache.axis2.util,javax.xml.transform.dom,javax.wsdl.extensions,org.apache.openejb.server.webservices,org.apache.ws.commons.schema.utils,org.apache.axis2.jaxws.description,org.apache.axis2.transport'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.pojo'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.axis2.description,javax.servlet.http,org.apache.axis2.context,org.apache.axis2.engine,org.apache.axis2.jaxws.context.utils,javax.xml.ws.handler.soap,org.apache.axis2.transport.http,org.w3c.dom,org.apache.axis2.jaxws.handler,org.apache.axis2.jaxws.context.factory,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.openejb.server.httpd,org.apache.openejb.server.axis2,javax.naming,org.apache.axis2.jaxws.core,org.apache.axis2.jaxws.registry,javax.xml.ws,org.apache.axis2.jaxws.server.endpoint.lifecycle,org.apache.axis2.jaxws.server.endpoint.lifecycle.factory'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.client'/>
    <p n='uses' v='org.apache.axis2.context,org.apache.openejb.util,org.apache.axis2.jaxws.description.impl,org.apache.axis2.jaxws.util,org.apache.axis2.jaxws,org.apache.axis2.metadata.registry,org.apache.axis2'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.util'/>
    <p n='uses' v='org.apache.openejb.util,javax.wsdl.xml,org.xml.sax'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axiom.om.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axiom.om.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.description)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.description
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.engine)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.engine
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.context.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.context.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.context.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.context.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description.builder.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description.builder.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.handler.lifecycle.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.handler.lifecycle.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.injection)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.injection
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.lifecycle)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.lifecycle
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.message.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.message.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server.dispatcher)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server.dispatcher
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server.endpoint.lifecycle)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server.endpoint.lifecycle
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server.endpoint.lifecycle.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server.endpoint.lifecycle.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.metadata.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.metadata.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.transport.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.transport.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.transport.http.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.transport.http.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2 ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.client)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.client ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.ejb)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.ejb ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.pojo)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.pojo ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.util)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.util ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.openejb.openejb-axis2/3.1.1' presentationname='openejb-axis2' symbolicname='org.apache.openejb.openejb-axis2' uri='../org/apache/openejb/openejb-axis2/3.1.1/openejb-axis2-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    61648
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-axis2'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-axis2'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.ejb'/>
    <p n='uses' v='org.apache.axis2.description,org.apache.axis2.engine,org.apache.axis2.context,org.apache.openejb.util,org.apache.axis2.jaxws.server.dispatcher,org.apache.axis2.jaxws.i18n,javax.xml.namespace,org.apache.axis2.jaxws.handler,org.apache.axis2.jaxws,javax.interceptor,org.apache.openejb.core.webservices,org.apache.axis2.jaxws.server,org.apache.openejb,org.apache.axis2,org.apache.openejb.server.axis2,javax.naming,org.apache.axis2.jaxws.core,org.apache.axis2.jaxws.description,org.apache.axis2.jaxws.message.util,org.apache.axis2.jaxws.message,javax.xml.ws'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.axis2.jaxws.handler.lifecycle.factory,javax.servlet.http,org.apache.axis2.engine,org.apache.axis2.context,javax.wsdl.extensions.soap,org.apache.axis2.addressing,javax.xml.namespace,org.apache.openejb.server.axis2.client,org.apache.openejb.core.webservices,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.openejb,org.apache.openejb.server.httpd,org.apache.axis2.wsdl,org.apache.openejb.server.axis2.ejb,javax.servlet,javax.naming,javax.wsdl.factory,javax.xml.transform.stream,javax.xml.ws,org.apache.openejb.util,javax.wsdl.xml,org.apache.axis2.jaxws.description.impl,org.apache.openejb.server.axis2.pojo,org.apache.axis2.jaxws.server,org.apache.openejb.server.axis2.util,org.apache.axis2.jaxws.core,javax.wsdl.extensions.http,org.apache.axis2.transport.http.util,org.apache.axis2.jaxws.injection,org.apache.openejb.server.webservices.saaj,org.apache.axis2.jaxws.description.builder,org.apache.axis2.jaxws.lifecycle,org.apache.axis2.jaxws.registry,javax.wsdl.extensions.schema,org.apache.axis2.description,javax.wsdl,org.apache.axiom.om.util,org.apache.axis2.transport.http,org.w3c.dom,org.apache.axis2.jaxws.description.builder.converter,org.apache.axis2,org.apache.axis2.util,javax.xml.transform.dom,javax.wsdl.extensions,org.apache.openejb.server.webservices,org.apache.ws.commons.schema.utils,org.apache.axis2.jaxws.description,org.apache.axis2.transport'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.pojo'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.axis2.description,javax.servlet.http,org.apache.axis2.context,org.apache.axis2.engine,org.apache.axis2.jaxws.context.utils,javax.xml.ws.handler.soap,org.apache.axis2.transport.http,org.w3c.dom,org.apache.axis2.jaxws.handler,org.apache.axis2.jaxws.context.factory,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.openejb.server.httpd,org.apache.openejb.server.axis2,javax.naming,org.apache.axis2.jaxws.core,org.apache.axis2.jaxws.registry,javax.xml.ws,org.apache.axis2.jaxws.server.endpoint.lifecycle,org.apache.axis2.jaxws.server.endpoint.lifecycle.factory'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.client'/>
    <p n='uses' v='org.apache.axis2.context,org.apache.openejb.util,org.apache.axis2.jaxws.description.impl,org.apache.axis2.jaxws.util,org.apache.axis2.jaxws,org.apache.axis2.metadata.registry,org.apache.axis2'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.axis2.util'/>
    <p n='uses' v='org.apache.openejb.util,javax.wsdl.xml,org.xml.sax'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axiom.om.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axiom.om.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.description)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.description
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.engine)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.engine
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.context.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.context.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.context.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.context.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description.builder.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description.builder.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.description.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.description.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.handler.lifecycle.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.handler.lifecycle.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.injection)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.injection
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.lifecycle)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.lifecycle
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.message.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.message.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server.dispatcher)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server.dispatcher
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server.endpoint.lifecycle)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server.endpoint.lifecycle
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.server.endpoint.lifecycle.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.server.endpoint.lifecycle.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.jaxws.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.jaxws.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.metadata.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.metadata.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.transport.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.transport.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.transport.http.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.transport.http.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.axis2.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2 ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.client)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.client ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.ejb)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.ejb ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.pojo)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.pojo ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.axis2.util)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.axis2.util ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.openejb.openejb-activemq/3.0.0' presentationname='openejb-activemq' symbolicname='org.apache.openejb.openejb-activemq' uri='../org/apache/openejb/openejb-activemq/3.0/openejb-activemq-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12925
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-activemq'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-activemq'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.activemq'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.openejb.server'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.activemq)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.activemq ;version=3.0.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-activemq/3.1.1' presentationname='openejb-activemq' symbolicname='org.apache.openejb.openejb-activemq' uri='../org/apache/openejb/openejb-activemq/3.1.1/openejb-activemq-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12636
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-activemq'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-activemq'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.activemq'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.openejb.server'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.activemq)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.activemq ;version=3.1.1
  </require>
</resource>
<resource id='org.apache.openejb.openejb-activemq/3.0.0.beta-2' presentationname='openejb-activemq' symbolicname='org.apache.openejb.openejb-activemq' uri='../org/apache/openejb/openejb-activemq/3.0-beta-2/openejb-activemq-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13059
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-activemq'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-activemq'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.activemq'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.openejb.server'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.activemq)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.activemq ;version=3.0.0.beta-2
  </require>
</resource>
<resource id='org.apache.openejb.openejb-activemq/3.0.1' presentationname='openejb-activemq' symbolicname='org.apache.openejb.openejb-activemq' uri='../org/apache/openejb/openejb-activemq/3.0.1/openejb-activemq-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12828
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-activemq'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-activemq'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.activemq'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.openejb.server'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.activemq)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.activemq ;version=3.0.1
  </require>
</resource>
<resource id='org.apache.openejb.openejb-activemq/3.1.0' presentationname='openejb-activemq' symbolicname='org.apache.openejb.openejb-activemq' uri='../org/apache/openejb/openejb-activemq/3.1/openejb-activemq-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12497
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-activemq'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-activemq'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.activemq'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.openejb.server'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.activemq)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.activemq ;version=3.1.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-core/3.1.0' presentationname='openejb-core' symbolicname='org.apache.openejb.openejb-core' uri='../org/apache/openejb/openejb-core/3.1/openejb-core-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1398691
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-core'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-core'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.resource'/>
    <p n='uses' v='org.apache.geronimo.transaction.manager,javax.resource.spi,org.apache.geronimo.transaction.log,org.apache.geronimo.connector.outbound.connectionmanagerconfig,javax.transaction.xa,org.apache.openejb.loader,javax.resource,org.apache.geronimo.connector.outbound.connectiontracking,javax.transaction,org.apache.geronimo.connector.outbound'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.cmp.cmp2'/>
    <p n='uses' v='org.apache.openejb.asm,org.apache.openejb,javax.ejb,org.apache.openejb.core.cmp,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.config'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.xml.namespace,javax.enterprise.deploy.model,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.openejb.cli,javax.naming,javax.wsdl.factory,javax.xml.parsers,javax.persistence,javax.xml.ws,org.apache.openejb.util,javax.enterprise.deploy.spi,org.apache.openejb.asm,javax.wsdl.xml,org.apache.openejb.jee.sun,org.apache.openejb.jee.wls,javax.wsdl.extensions.http,org.apache.openejb.assembler,javax.enterprise.deploy.spi.factories,org.apache.openejb.loader,org.xml.sax.helpers,org.apache.openejb.jee,org.apache.openejb.assembler.classic,javax.xml.bind,javax.annotation.security,javax.jms,org.apache.openejb.config.rules,org.codehaus.swizzle.stream,javax.enterprise.deploy.spi.exceptions,org.apache.openejb.jee.oejb2,javax.interceptor,org.apache.openejb.core.cmp,org.apache.openejb.jee.jpa,org.apache.openejb.jee.jpa.unit,javax.wsdl,org.apache.openejb.config.sys,org.xml.sax,org.apache.openejb.jee.oejb3,javax.enterprise.deploy.spi.status,javax.ejb,org.apache.openejb.finder,javax.enterprise.deploy.shared,javax.annotation,javax.jws,org.apache.openejb.asm.commons,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.transaction'/>
    <p n='uses' v='org.apache.openejb.util,javax.resource.spi,javax.resource.spi.work,javax.transaction.xa,org.apache.openejb,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.security.jacc'/>
    <p n='uses' v='org.apache.openejb.loader,javax.security.jacc,org.apache.openejb.core.security'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.mdb'/>
    <p n='uses' v='org.apache.openejb.resource,org.apache.openejb.util,javax.resource.spi,org.apache.openejb.core.transaction,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,javax.transaction.xa,org.apache.openejb,javax.resource.spi.endpoint,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.core.timer,org.apache.openejb.loader,javax.resource,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.ri.sp'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.spi,javax.security.auth.login,javax.security.jacc,javax.transaction.xa,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.webservices'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.soap,org.apache.openejb.util,javax.wsdl.xml,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.transform,org.apache.openejb,javax.naming,javax.jws,javax.xml.ws.spi,javax.xml.ws.wsaddressing,javax.xml.bind,javax.xml.ws'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.transaction,org.apache.xbean.recipe,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.core.timer,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.cli'/>
    <p n='uses' v='org.apache.openejb.finder,org.apache.openejb.util,org.apache.openejb.loader,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='mandatory' v='partial'/>
    <p n='package' v='org.apache.openejb.client'/>
    <p n='partial' v='true'/>
    <p n='uses' v='org.apache.openejb.util,javax.security.auth.login,javax.naming.spi,org.apache.openejb,org.apache.openejb.spi,javax.naming,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.core.ivm.naming'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.cmp'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.transaction,org.apache.openejb,org.apache.openejb.core.entity,javax.ejb,org.apache.openejb.spi,org.apache.openejb.core.timer,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.spi'/>
    <p n='uses' v='javax.ejb,javax.naming,javax.security.auth.login,javax.resource.spi,javax.resource,org.apache.openejb.core,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.resources'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.resource.activemq'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.openejb.util,javax.resource.spi,javax.sql,org.apache.openejb.spi,javax.naming,org.apache.activemq.ra,org.apache.activemq.store.memory,org.apache.openejb.loader,org.apache.activemq.store.jdbc,org.apache.activemq.store'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.hibernate'/>
    <p n='uses' v='org.hibernate,org.hibernate.transaction,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.urlhandler.resource'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.ivm'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.stateless,org.apache.openejb.core.singleton,org.apache.openejb,org.apache.openejb.core.entity,javax.ejb,org.apache.openejb.spi,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy,org.apache.openejb.core.stateful'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core'/>
    <p n='uses' v='javax.resource.spi,org.apache.openejb.core.transaction,org.apache.openejb,org.apache.openejb.spi,org.apache.openejb.core.cmp,javax.naming,javax.xml.rpc.handler,org.apache.openejb.core.ivm,javax.transaction,org.apache.openejb.core.ivm.naming,org.apache.openejb.core.stateful,org.apache.openejb.util,org.apache.openejb.asm,org.apache.openejb.core.stateless,org.apache.openejb.core.singleton,org.omg.CORBA,javax.ejb,org.apache.openejb.core.timer,org.apache.openejb.loader,org.apache.openejb.asm.commons,javax.resource,javax.mail,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.ivm.naming'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.openejb.util,javax.security.auth.login,javax.xml.namespace,org.apache.xbean.naming.context,org.apache.openejb.core.webservices,javax.naming.spi,org.apache.openejb,org.apache.openejb.spi,javax.naming,javax.xml.rpc,org.apache.openejb.loader,javax.persistence,org.apache.openejb.core,org.apache.openejb.core.ivm,javax.xml.ws,org.apache.xbean.naming.reference,javax.xml.registry'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.stateful'/>
    <p n='uses' v='org.apache.openejb.core.transaction,org.apache.openejb,org.apache.openejb.spi,javax.naming,javax.xml.rpc.handler,javax.persistence,org.apache.openejb.core,org.apache.openejb.core.ivm,javax.transaction,org.apache.openejb.util,org.apache.openejb.persistence,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,javax.ejb,org.apache.openejb.loader,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util'/>
    <p n='uses' v='org.apache.openejb,sun.misc,javax.naming,javax.xml.parsers,javax.transaction,org.apache.openejb.asm,org.xml.sax,org.apache.xbean.recipe,org.w3c.dom,org.apache.openejb.finder,javax.ejb,org.apache.log4j,org.apache.openejb.loader,org.apache.openejb.asm.commons'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.config.sys'/>
    <p n='uses' v='org.apache.openejb.util,org.xml.sax,org.apache.openejb.config,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,org.apache.openejb,javax.xml.transform,javax.xml.transform.sax,org.apache.openejb.finder,javax.xml.parsers,org.xml.sax.helpers,org.apache.openejb.jee,javax.xml.bind'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.persistence'/>
    <p n='uses' v='javax.persistence.spi,org.xml.sax,javax.sql,javax.xml.parsers,org.xml.sax.helpers,javax.persistence,org.apache.openejb.core,javax.transaction,org.apache.openejb.javaagent'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.cmp.jpa'/>
    <p n='uses' v='org.apache.openejb.core.cmp.cmp2,org.apache.openejb.core.transaction,org.apache.openjpa.event,org.apache.openjpa.persistence,org.apache.openejb,javax.ejb,org.apache.openejb.core.cmp,javax.naming,javax.persistence,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.alt.util.resources'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.stateless'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.openejb.core.transaction,javax.interceptor,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.openejb.spi,javax.naming,javax.xml.rpc.handler,org.apache.openejb.core,org.apache.openejb.core.ivm,javax.xml.ws,org.apache.openejb.util,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,org.w3c.dom,javax.ejb,org.apache.openejb.finder,org.apache.openejb.core.timer,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.interceptor'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.rpc.handler,javax.interceptor,org.apache.openejb.core'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.mgmt'/>
    <p n='uses' v='javax.ejb,javax.management,javax.management.j2ee'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.security.jaas'/>
    <p n='uses' v='org.apache.openejb.util,javax.security.auth.login,javax.sql,org.apache.openejb.spi,javax.naming,javax.security.auth.spi,org.apache.openejb.loader,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.singleton'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.openejb.core.transaction,javax.interceptor,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.openejb.spi,javax.naming,javax.xml.rpc.handler,org.apache.openejb.core,org.apache.openejb.core.ivm,javax.xml.ws,org.apache.openejb.util,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,org.w3c.dom,javax.ejb,org.apache.openejb.finder,org.apache.openejb.core.timer,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.resource.jdbc'/>
    <p n='uses' v='org.apache.openejb.resource,org.apache.openejb.util,javax.transaction.xa,org.apache.commons.dbcp.managed,javax.sql,org.apache.commons.dbcp,org.apache.openejb.finder,org.apache.openejb.loader,javax.transaction'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler.classic.cmd'/>
    <p n='uses' v='org.apache.openejb.util,javax.ejb,javax.naming,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.security'/>
    <p n='uses' v='org.apache.openejb.util,javax.security.auth.login,org.apache.openejb.core.security.jaas,org.apache.openejb.core.security.jacc,org.apache.openejb,org.apache.openejb.spi,org.apache.openejb.loader,javax.security.jacc,org.apache.openejb.core,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.eclipselink'/>
    <p n='uses' v='org.eclipse.persistence.transaction,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.entity'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.transaction,org.apache.openejb,org.apache.openejb.spi,javax.ejb,org.apache.openejb.core.timer,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.toplink'/>
    <p n='uses' v='oracle.toplink.essentials.transaction,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler.dynamic'/>
    <p n='uses' v='org.apache.openejb.assembler.classic'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.timer'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.transaction,javax.sql,org.apache.openejb,org.apache.openejb.spi,javax.ejb,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler'/>
    <p n='uses' v='org.apache.openejb.spi,javax.ejb,org.apache.openejb.config,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.openejb'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.io'/>
    <p n='uses' v='org.apache.openejb.util'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler.classic'/>
    <p n='uses' v='javax.resource.spi.work,javax.xml.namespace,javax.ejb.spi,org.apache.openejb.core.webservices,org.apache.openejb,javax.naming,javax.persistence,org.apache.openejb.core,javax.xml.ws,org.apache.geronimo.transaction.manager,javax.persistence.spi,org.apache.openejb.util,org.apache.openejb.core.interceptor,org.apache.xbean.naming.context,org.omg.CORBA,org.apache.openejb.core.timer,org.apache.openejb.loader,javax.security.jacc,javax.jms,org.codehaus.swizzle.stream,org.apache.openejb.resource,org.apache.openejb.core.cmp.cmp2,javax.resource.spi,org.apache.openejb.core.transaction,javax.interceptor,javax.sql,org.apache.openejb.spi,org.apache.openejb.core.cmp,javax.transaction,org.apache.openejb.core.ivm.naming,org.apache.openejb.javaagent,org.apache.openejb.persistence,org.apache.xbean.recipe,org.apache.geronimo.connector.work,org.apache.openejb.finder,javax.ejb,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.ivm.naming.java'/>
    <p n='uses' v='org.apache.openejb.spi,javax.naming,org.apache.openejb.loader,org.apache.openejb.core,javax.naming.spi'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.proxy'/>
    <p n='uses' v='org.apache.openejb'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.config.rules'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.config,javax.interceptor,org.apache.openejb,org.apache.openejb.finder,javax.ejb,javax.annotation,javax.jws,org.apache.openejb.jee,javax.annotation.security'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation.security
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.model
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.shared)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.shared
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi.exceptions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi.exceptions
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi.factories)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi.factories
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi.status)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi.status
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.j2ee)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.j2ee
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.work)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.work
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.jacc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.jacc
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.registry
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.rpc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.rpc.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=oracle.toplink.essentials.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package oracle.toplink.essentials.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.broker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.ra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.ra
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.store
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.jdbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.store.jdbc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.memory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.store.memory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.cli)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.cli
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.dbcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp.managed)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.dbcp.managed
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound.connectionmanagerconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound.connectionmanagerconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound.connectiontracking)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound.connectiontracking
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.work)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.work
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.transaction.log
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.manager)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.transaction.manager
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.alt.util.resources)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.alt.util.resources ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.asm.commons
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic.cmd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic.cmd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.dynamic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.dynamic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.cli)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.cli ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client)(version&gt;=3.1.0)(mandatory=partial)(partial=true)(mandatory:&lt;*mandatory, partial))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config.rules)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config.rules ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config.sys)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config.sys ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.cmp)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.cmp ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.cmp.cmp2)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.cmp.cmp2 ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.cmp.jpa)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.cmp.jpa ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.entity)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.entity ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.interceptor)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.interceptor ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming.java)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming.java ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.mdb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.mdb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security.jaas)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security.jaas ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security.jacc)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security.jacc ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.singleton)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.singleton ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.stateful)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.stateful ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.stateless)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.stateless ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.timer)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.timer ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.transaction)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.transaction ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.eclipselink)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.eclipselink ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.finder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.finder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.hibernate)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.hibernate ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.javaagent)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.javaagent ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa.unit)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa.unit ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb2)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb2 ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb3)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb3 ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.sun)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.sun ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.wls)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.wls ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.mgmt)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.mgmt ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.persistence)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.persistence ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource.activemq)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource.activemq ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource.jdbc)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource.jdbc ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.ri.sp)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.ri.sp ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.toplink)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.toplink ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.io)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.io ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.proxy)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.proxy ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.resources)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.resources ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.urlhandler.resource)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.urlhandler.resource
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.persistence
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.context)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.context ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.reference)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.reference ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.recipe)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.recipe ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.swizzle.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.swizzle.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.persistence.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.persistence.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.hibernate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hibernate
  </require>
  <require extend='false' filter='(&amp;(package=org.hibernate.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hibernate.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.openejb.openejb-core/3.0.0.beta-2' presentationname='openejb-core' symbolicname='org.apache.openejb.openejb-core' uri='../org/apache/openejb/openejb-core/3.0-beta-2/openejb-core-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1202171
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-core'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-core'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.resource'/>
    <p n='uses' v='org.apache.geronimo.transaction.manager,javax.resource.spi,javax.resource,org.apache.geronimo.connector.outbound.connectionmanagerconfig,javax.transaction,org.apache.geronimo.connector.outbound.connectiontracking,org.apache.geronimo.connector.outbound'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.cmp.cmp2'/>
    <p n='uses' v='org.objectweb.asm,org.apache.openejb,javax.ejb,org.apache.openejb.core.cmp,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.config'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.xml.namespace,javax.enterprise.deploy.model,org.apache.openejb.core.webservices,org.apache.openejb.cli,org.apache.openejb,javax.naming,javax.wsdl.factory,javax.xml.parsers,javax.persistence,org.apache.openejb.core,javax.xml.ws,org.objectweb.asm.commons,org.apache.openejb.util,javax.enterprise.deploy.spi,javax.wsdl.xml,org.apache.openejb.jee.sun,org.apache.openejb.jee.wls,javax.wsdl.extensions.http,org.apache.openejb.assembler,javax.enterprise.deploy.spi.factories,org.apache.openejb.loader,org.xml.sax.helpers,org.apache.openejb.jee,org.apache.openejb.assembler.classic,javax.xml.bind,javax.annotation.security,javax.jms,org.apache.openejb.config.rules,org.codehaus.swizzle.stream,javax.enterprise.deploy.spi.exceptions,org.apache.openejb.jee.oejb2,javax.interceptor,javax.sql,org.apache.openejb.core.cmp,org.apache.openejb.jee.jpa,org.apache.openejb.jee.jpa.unit,javax.wsdl,org.apache.openejb.config.sys,org.xml.sax,org.apache.openejb.jee.oejb3,javax.enterprise.deploy.spi.status,org.apache.xbean.finder,org.objectweb.asm,javax.ejb,javax.enterprise.deploy.shared,javax.annotation,javax.jws,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.transaction'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.security.jacc'/>
    <p n='uses' v='org.apache.openejb.loader,javax.security.jacc,org.apache.openejb.core.security'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.ri.sp'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.spi,javax.security.auth.login,javax.security.jacc,javax.transaction.xa,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.mdb'/>
    <p n='uses' v='org.apache.openejb.util,javax.resource.spi,org.apache.openejb.core.transaction,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,javax.transaction.xa,org.apache.openejb,javax.resource.spi.endpoint,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.core.timer,javax.resource,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.webservices'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.soap,org.apache.openejb.util,javax.wsdl.xml,org.xml.sax,javax.xml.namespace,org.apache.openejb,javax.naming,javax.jws,javax.xml.ws.spi,javax.xml.ws,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.cli'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.loader,org.apache.xbean.finder,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.xbean.recipe,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.core.timer,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='mandatory' v='partial'/>
    <p n='package' v='org.apache.openejb.client'/>
    <p n='partial' v='true'/>
    <p n='uses' v='javax.naming,org.apache.openejb.loader,javax.naming.spi'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.spi'/>
    <p n='uses' v='javax.ejb,javax.naming,javax.security.auth.login,javax.resource.spi,javax.resource,org.apache.openejb.core,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.cmp'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.transaction,org.apache.openejb,org.apache.openejb.core.entity,javax.ejb,org.apache.openejb.spi,org.apache.openejb.core.timer,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.resources'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.resource.activemq'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.openejb.util,javax.resource.spi,javax.sql,org.apache.openejb.spi,javax.naming,org.apache.activemq.ra,org.apache.activemq.store.memory,org.apache.openejb.loader,org.apache.activemq.store.jdbc,org.apache.activemq.store'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.urlhandler.resource'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.ivm'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.stateless,org.apache.openejb,org.apache.openejb.core.entity,javax.ejb,org.apache.openejb.spi,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy,org.apache.openejb.core.stateful'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core'/>
    <p n='uses' v='javax.resource.spi,org.apache.openejb.core.transaction,org.apache.openejb.core.mdb,org.apache.openejb,org.apache.openejb.spi,org.apache.openejb.core.cmp,javax.naming,javax.xml.rpc.handler,org.apache.openejb.core.ivm,javax.transaction,org.apache.openejb.core.ivm.naming,org.apache.openejb.core.stateful,org.objectweb.asm.commons,org.apache.openejb.util,org.apache.openejb.core.stateless,org.objectweb.asm,org.omg.CORBA,javax.ejb,org.apache.openejb.core.timer,org.apache.openejb.loader,javax.resource,javax.mail,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.ivm.naming'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.openejb.util,javax.security.auth.login,javax.xml.namespace,org.apache.xbean.naming.context,org.apache.openejb.core.webservices,javax.naming.spi,org.apache.openejb,org.apache.openejb.spi,javax.naming,javax.xml.rpc,org.apache.openejb.loader,javax.persistence,org.apache.openejb.core,org.apache.openejb.core.ivm,javax.xml.ws,org.apache.xbean.naming.reference,javax.xml.registry'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.stateful'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.persistence,org.apache.openejb.core.transaction,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,org.apache.openejb,org.apache.openejb.spi,javax.ejb,javax.naming,javax.xml.rpc.handler,org.apache.openejb.loader,javax.persistence,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.xbean.finder,org.apache.openejb,org.apache.log4j,javax.naming,org.apache.openejb.loader,javax.xml.parsers,javax.transaction'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.config.sys'/>
    <p n='uses' v='org.apache.openejb.util,org.xml.sax,org.apache.openejb.config,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,org.apache.xbean.finder,org.apache.openejb,javax.xml.transform,javax.xml.transform.sax,javax.xml.parsers,org.xml.sax.helpers,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.persistence'/>
    <p n='uses' v='javax.persistence.spi,javax.persistence,javax.transaction,javax.sql'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.cmp.jpa'/>
    <p n='uses' v='org.apache.openejb.core.cmp.cmp2,org.apache.openjpa.event,org.apache.openjpa.persistence,org.apache.openejb,javax.ejb,org.apache.openejb.core.cmp,javax.naming,javax.persistence,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.alt.util.resources'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.stateless'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.openejb.util,org.apache.openejb.core.transaction,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,javax.interceptor,org.apache.xbean.finder,org.apache.openejb,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.core.timer,javax.xml.rpc.handler,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.xml.ws,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.mgmt'/>
    <p n='uses' v='javax.ejb,javax.management,javax.management.j2ee'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.interceptor'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.rpc.handler,javax.interceptor,org.apache.openejb.core'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.security.jaas'/>
    <p n='uses' v='org.apache.openejb.util,javax.security.auth.spi,javax.security.auth.login,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.resource.jdbc'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.loader,org.apache.commons.dbcp.managed,org.apache.xbean.finder,org.apache.commons.dbcp,javax.sql'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler.classic.cmd'/>
    <p n='uses' v='org.apache.openejb.util,javax.ejb,javax.naming,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.security'/>
    <p n='uses' v='org.apache.openejb.util,javax.security.auth.login,org.apache.openejb.core.security.jaas,org.apache.openejb.core.security.jacc,org.apache.openejb,org.apache.openejb.spi,org.apache.openejb.loader,javax.security.jacc,org.apache.openejb.core,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.entity'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.transaction,org.apache.openejb,javax.ejb,org.apache.openejb.spi,org.apache.openejb.core.timer,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler.dynamic'/>
    <p n='uses' v='org.apache.openejb.assembler.classic'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.timer'/>
    <p n='uses' v='org.apache.openejb.util,javax.sql,org.apache.openejb,org.apache.openejb.spi,javax.ejb,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler'/>
    <p n='uses' v='org.apache.openejb.spi,javax.ejb,org.apache.openejb.config,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.openejb'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.io'/>
    <p n='uses' v='org.apache.openejb.util'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler.classic'/>
    <p n='uses' v='org.codehaus.swizzle.stream,org.apache.openejb.resource,org.apache.openejb.core.cmp.cmp2,javax.resource.spi,javax.resource.spi.work,javax.ejb.spi,javax.xml.namespace,javax.interceptor,org.apache.openejb.core.webservices,javax.sql,org.apache.openejb,org.apache.openejb.core.cmp,org.apache.openejb.spi,javax.naming,javax.persistence,org.apache.openejb.core,javax.xml.ws,javax.transaction,org.apache.openejb.core.ivm.naming,org.apache.openejb.javaagent,org.apache.geronimo.connector,javax.persistence.spi,org.apache.geronimo.transaction.manager,org.apache.openejb.util,org.apache.openejb.persistence,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,org.apache.xbean.naming.context,org.omg.CORBA,org.apache.geronimo.connector.work,javax.ejb,org.apache.openejb.core.timer,org.apache.openejb.loader,javax.security.jacc,javax.jms,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.ivm.naming.java'/>
    <p n='uses' v='org.apache.openejb.spi,javax.naming,org.apache.openejb.loader,org.apache.openejb.core,javax.naming.spi'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.proxy'/>
    <p n='uses' v='org.apache.openejb'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.config.rules'/>
    <p n='uses' v='javax.ejb,org.apache.openejb.util,org.apache.openejb.config,org.apache.openejb.jee,javax.interceptor,org.apache.openejb'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation.security
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.model
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.shared)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.shared
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi.exceptions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi.exceptions
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi.factories)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi.factories
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi.status)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi.status
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.j2ee)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.j2ee
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.work)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.work
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.jacc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.jacc
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.registry
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.rpc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.rpc.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.broker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.ra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.ra
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.store
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.jdbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.store.jdbc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.memory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.store.memory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.cli)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.cli
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.dbcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp.managed)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.dbcp.managed
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound.connectionmanagerconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound.connectionmanagerconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound.connectiontracking)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound.connectiontracking
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.work)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.work
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.manager)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.transaction.manager
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.alt.util.resources)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.alt.util.resources ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic.cmd)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic.cmd ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.dynamic)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.dynamic ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.cli)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.cli ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client)(version&gt;=3.0.0.beta-2)(mandatory=partial)(partial=true)(mandatory:&lt;*mandatory, partial))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config.rules)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config.rules ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config.sys)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config.sys ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.cmp)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.cmp ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.cmp.cmp2)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.cmp.cmp2 ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.cmp.jpa)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.cmp.jpa ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.entity)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.entity ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.interceptor)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.interceptor ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming.java)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming.java ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.mdb)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.mdb ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security.jaas)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security.jaas ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security.jacc)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security.jacc ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.stateful)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.stateful ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.stateless)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.stateless ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.timer)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.timer ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.transaction)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.transaction ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.javaagent)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.javaagent ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa.unit)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa.unit ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb2)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb2 ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb3)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb3 ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.sun)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.sun ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.wls)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.wls ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.mgmt)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.mgmt ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.persistence)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.persistence ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource.activemq)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource.activemq ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource.jdbc)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource.jdbc ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.ri.sp)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.ri.sp ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.io)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.io ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.proxy)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.proxy ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.resources)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.resources ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.urlhandler.resource)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.urlhandler.resource
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.persistence
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.context)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.context ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.reference)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.reference ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.recipe)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.recipe ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.swizzle.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.swizzle.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.openejb.openejb-core/3.1.1' presentationname='openejb-core' symbolicname='org.apache.openejb.openejb-core' uri='../org/apache/openejb/openejb-core/3.1.1/openejb-core-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1448855
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-core'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-core'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.resource'/>
    <p n='uses' v='org.apache.geronimo.transaction.manager,javax.resource.spi,org.apache.geronimo.transaction.log,org.apache.geronimo.connector.outbound.connectionmanagerconfig,javax.transaction.xa,org.apache.openejb.loader,javax.resource,org.apache.geronimo.connector.outbound.connectiontracking,javax.transaction,org.apache.geronimo.connector.outbound'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.cmp.cmp2'/>
    <p n='uses' v='org.apache.openejb,javax.ejb,org.apache.openejb.core.cmp,org.apache.openejb.loader,org.apache.xbean.asm,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.config'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.xml.namespace,javax.enterprise.deploy.model,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.openejb.cli,javax.naming,javax.wsdl.factory,javax.xml.parsers,javax.persistence,javax.xml.ws,org.apache.openejb.util,javax.enterprise.deploy.spi,javax.wsdl.xml,org.apache.openejb.jee.sun,org.apache.openejb.jee.wls,javax.wsdl.extensions.http,org.apache.openejb.assembler,javax.enterprise.deploy.spi.factories,org.apache.openejb.loader,org.xml.sax.helpers,org.apache.openejb.jee,org.apache.openejb.assembler.classic,org.apache.xbean.asm.commons,javax.annotation.security,javax.xml.bind,javax.jms,org.apache.openejb.config.rules,org.codehaus.swizzle.stream,javax.enterprise.deploy.spi.exceptions,org.apache.openejb.jee.oejb2,javax.interceptor,org.apache.openejb.core.cmp,org.apache.openejb.jee.jpa,org.apache.openejb.api,org.apache.xbean.asm,org.apache.openejb.jee.jpa.unit,javax.wsdl,org.apache.openejb.config.sys,org.xml.sax,org.apache.openejb.jee.oejb3,javax.enterprise.deploy.spi.status,org.apache.xbean.finder,javax.ejb,javax.enterprise.deploy.shared,javax.annotation,javax.jws,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.transaction'/>
    <p n='uses' v='org.apache.openejb.util,javax.resource.spi,javax.resource.spi.work,javax.transaction.xa,org.apache.openejb,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.security.jacc'/>
    <p n='uses' v='org.apache.openejb.loader,javax.security.jacc,org.apache.openejb.core.security'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.mdb'/>
    <p n='uses' v='org.apache.openejb.resource,org.apache.openejb.util,javax.resource.spi,org.apache.openejb.core.transaction,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,javax.transaction.xa,org.apache.openejb,javax.resource.spi.endpoint,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.core.timer,org.apache.openejb.loader,javax.resource,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.ri.sp'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.spi,javax.security.auth.login,javax.security.jacc,javax.transaction.xa,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.webservices'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.soap,org.apache.openejb.util,javax.wsdl.xml,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.transform,org.apache.openejb,javax.naming,javax.jws,javax.xml.ws.spi,javax.xml.ws.wsaddressing,javax.xml.bind,javax.xml.ws'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.transaction,org.apache.xbean.recipe,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.core.timer,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.cli'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.loader,org.apache.xbean.finder,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='mandatory' v='partial'/>
    <p n='package' v='org.apache.openejb.client'/>
    <p n='partial' v='true'/>
    <p n='uses' v='org.apache.openejb.util,javax.security.auth.login,javax.naming.spi,org.apache.openejb,org.apache.openejb.spi,javax.naming,org.apache.openejb.loader,org.apache.openejb.api,org.apache.openejb.core.ivm,org.apache.openejb.core.ivm.naming'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.cmp'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.transaction,org.apache.openejb,org.apache.openejb.core.entity,javax.ejb,org.apache.openejb.spi,org.apache.openejb.core.timer,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.spi'/>
    <p n='uses' v='javax.security.auth.login,javax.resource.spi,org.apache.openejb,javax.ejb,javax.naming,javax.resource,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.resources'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.resource.activemq'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.openejb.util,javax.resource.spi,javax.sql,org.apache.openejb.spi,javax.naming,org.apache.activemq.ra,org.apache.activemq.store.memory,org.apache.openejb.loader,org.apache.activemq.store.jdbc,org.apache.activemq.store'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.ivm.naming.openejb'/>
    <p n='uses' v='org.apache.openejb.spi,javax.naming,org.apache.openejb.loader,javax.naming.spi'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.hibernate'/>
    <p n='uses' v='org.hibernate,org.hibernate.transaction,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.urlhandler.resource'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.ivm'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.stateless,org.apache.openejb.core.singleton,org.apache.openejb,org.apache.openejb.core.entity,javax.ejb,org.apache.openejb.spi,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy,org.apache.openejb.core.stateful'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core'/>
    <p n='uses' v='javax.resource.spi,org.apache.openejb.core.transaction,org.apache.openejb,org.apache.openejb.spi,org.apache.openejb.core.cmp,javax.naming,javax.xml.rpc.handler,org.apache.xbean.asm,org.apache.openejb.core.ivm,javax.transaction,org.apache.openejb.core.ivm.naming,org.apache.openejb.core.stateful,org.apache.openejb.util,org.apache.openejb.core.stateless,org.apache.openejb.core.singleton,org.omg.CORBA,javax.ejb,org.apache.openejb.core.timer,org.apache.openejb.loader,javax.resource,javax.mail,org.apache.xbean.asm.commons,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.ivm.naming'/>
    <p n='uses' v='javax.xml.ws.handler,javax.security.auth.login,javax.xml.namespace,org.apache.openejb.core.webservices,javax.naming.spi,org.apache.openejb,org.apache.openejb.spi,javax.naming,org.apache.openejb.core.ivm.naming.openejb,javax.persistence,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.xml.ws,javax.xml.registry,org.apache.openejb.util,org.apache.xbean.naming.context,javax.xml.rpc,org.apache.openejb.loader,org.apache.openejb.core.ivm.naming.java,org.apache.xbean.naming.reference'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.stateful'/>
    <p n='uses' v='org.apache.openejb.core.transaction,org.apache.openejb,org.apache.openejb.spi,javax.naming,javax.xml.rpc.handler,javax.persistence,org.apache.openejb.core,org.apache.openejb.core.ivm,javax.transaction,org.apache.openejb.util,org.apache.openejb.persistence,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,javax.ejb,org.apache.openejb.loader,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util'/>
    <p n='uses' v='org.apache.openejb,sun.misc,javax.naming,javax.xml.parsers,org.apache.xbean.asm,javax.transaction,org.xml.sax,org.apache.xbean.recipe,org.w3c.dom,org.apache.xbean.finder,javax.ejb,org.apache.log4j,org.apache.openejb.loader,org.apache.xbean.asm.commons'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.config.sys'/>
    <p n='uses' v='org.apache.openejb.util,org.xml.sax,org.apache.openejb.config,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,org.apache.xbean.finder,org.apache.openejb,javax.xml.transform,javax.xml.transform.sax,javax.xml.parsers,org.xml.sax.helpers,org.apache.openejb.jee,javax.xml.bind'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.persistence'/>
    <p n='uses' v='javax.persistence.spi,org.xml.sax,javax.sql,javax.xml.parsers,org.xml.sax.helpers,javax.persistence,org.apache.openejb.core,javax.transaction,org.apache.openejb.javaagent'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.cmp.jpa'/>
    <p n='uses' v='org.apache.openejb.core.cmp.cmp2,org.apache.openejb.core.transaction,org.apache.openjpa.event,org.apache.openjpa.persistence,org.apache.openejb,javax.ejb,org.apache.openejb.core.cmp,javax.naming,javax.persistence,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.alt.util.resources'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.stateless'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.openejb.core.transaction,javax.interceptor,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.openejb.spi,javax.naming,javax.xml.rpc.handler,org.apache.openejb.core,org.apache.openejb.core.ivm,javax.xml.ws,org.apache.openejb.util,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,org.w3c.dom,org.apache.xbean.finder,javax.ejb,org.apache.openejb.core.timer,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.mgmt'/>
    <p n='uses' v='javax.ejb,javax.management,javax.management.j2ee'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.security.jaas'/>
    <p n='uses' v='org.apache.openejb.util,javax.security.auth.login,javax.sql,org.apache.openejb.spi,javax.naming,javax.security.auth.spi,org.apache.openejb.loader,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.interceptor'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.openejb.util,javax.xml.rpc.handler,org.apache.openejb.core.transaction,javax.interceptor,org.apache.openejb.core'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.singleton'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.openejb.core.transaction,javax.interceptor,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.openejb.spi,javax.naming,javax.xml.rpc.handler,org.apache.openejb.core,org.apache.openejb.core.ivm,javax.xml.ws,org.apache.openejb.util,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,org.w3c.dom,org.apache.xbean.finder,javax.ejb,org.apache.openejb.core.timer,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.resource.jdbc'/>
    <p n='uses' v='org.apache.openejb.resource,org.apache.openejb.util,javax.transaction.xa,org.apache.commons.dbcp.managed,org.apache.xbean.finder,javax.sql,org.apache.commons.dbcp,org.apache.openejb.loader,javax.transaction'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler.classic.cmd'/>
    <p n='uses' v='org.apache.openejb.util,javax.ejb,javax.naming,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.security'/>
    <p n='uses' v='org.apache.openejb.util,javax.security.auth.login,org.apache.openejb.core.security.jaas,org.apache.openejb.core.security.jacc,org.apache.openejb,org.apache.openejb.spi,org.apache.openejb.loader,javax.security.jacc,org.apache.openejb.core,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.eclipselink'/>
    <p n='uses' v='org.eclipse.persistence.transaction,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.entity'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.transaction,org.apache.openejb,javax.ejb,org.apache.openejb.spi,org.apache.openejb.core.timer,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.toplink'/>
    <p n='uses' v='oracle.toplink.essentials.transaction,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler.dynamic'/>
    <p n='uses' v='org.apache.openejb.assembler.classic'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.timer'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.transaction,javax.sql,org.apache.openejb,org.apache.openejb.spi,javax.ejb,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction,org.quartz'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler'/>
    <p n='uses' v='org.apache.openejb.spi,javax.ejb,org.apache.openejb.config,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.openejb'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.io'/>
    <p n='uses' v='org.apache.openejb.util'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler.classic'/>
    <p n='uses' v='javax.resource.spi.work,javax.xml.namespace,javax.ejb.spi,org.apache.openejb.core.webservices,org.apache.openejb,javax.naming,javax.persistence,org.apache.openejb.core,javax.xml.ws,org.apache.geronimo.transaction.manager,javax.persistence.spi,org.apache.openejb.util,org.apache.openejb.core.interceptor,org.apache.xbean.naming.context,org.omg.CORBA,org.apache.openejb.core.timer,org.apache.openejb.loader,javax.security.jacc,javax.jms,org.codehaus.swizzle.stream,org.apache.openejb.resource,org.apache.openejb.core.cmp.cmp2,javax.resource.spi,org.apache.openejb.core.transaction,javax.interceptor,javax.sql,org.apache.openejb.spi,org.apache.openejb.core.cmp,javax.transaction,org.apache.openejb.core.ivm.naming,org.apache.openejb.javaagent,org.apache.openejb.persistence,org.apache.xbean.recipe,org.apache.xbean.finder,org.apache.geronimo.connector.work,javax.ejb,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.ivm.naming.java'/>
    <p n='uses' v='org.apache.openejb.spi,javax.naming,org.apache.openejb.loader,org.apache.openejb.core,javax.naming.spi'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.proxy'/>
    <p n='uses' v='org.apache.openejb'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.config.rules'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.config,javax.interceptor,org.apache.xbean.finder,org.apache.openejb,javax.ejb,javax.annotation,javax.jws,org.apache.openejb.jee,javax.annotation.security'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation.security
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.model
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.shared)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.shared
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi.exceptions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi.exceptions
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi.factories)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi.factories
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi.status)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi.status
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.j2ee)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.j2ee
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.work)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.work
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.jacc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.jacc
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.registry
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.rpc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.rpc.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=oracle.toplink.essentials.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package oracle.toplink.essentials.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.broker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.ra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.ra
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.store
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.jdbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.store.jdbc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.memory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.store.memory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.cli)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.cli
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.dbcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp.managed)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.dbcp.managed
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound.connectionmanagerconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound.connectionmanagerconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound.connectiontracking)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound.connectiontracking
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.work)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.work
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.transaction.log
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.manager)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.transaction.manager
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.alt.util.resources)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.alt.util.resources ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.api)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.api ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic.cmd)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic.cmd ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.dynamic)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.dynamic ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.cli)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.cli ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client)(version&gt;=3.1.1)(mandatory=partial)(partial=true)(mandatory:&lt;*mandatory, partial))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config.rules)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config.rules ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config.sys)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config.sys ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.cmp)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.cmp ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.cmp.cmp2)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.cmp.cmp2 ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.cmp.jpa)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.cmp.jpa ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.entity)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.entity ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.interceptor)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.interceptor ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming.java)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming.java ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming.openejb)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming.openejb ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.mdb)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.mdb ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security.jaas)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security.jaas ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security.jacc)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security.jacc ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.singleton)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.singleton ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.stateful)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.stateful ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.stateless)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.stateless ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.timer)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.timer ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.transaction)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.transaction ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.eclipselink)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.eclipselink ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.hibernate)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.hibernate ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.javaagent)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.javaagent ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa.unit)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa.unit ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb2)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb2 ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb3)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb3 ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.sun)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.sun ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.wls)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.wls ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.mgmt)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.mgmt ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.persistence)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.persistence ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource.activemq)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource.activemq ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource.jdbc)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource.jdbc ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.ri.sp)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.ri.sp ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.toplink)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.toplink ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.io)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.io ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.proxy)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.proxy ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.resources)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.resources ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.urlhandler.resource)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.urlhandler.resource
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.persistence
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.asm.commons
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.context)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.context ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.reference)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.reference ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.recipe)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.recipe
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.swizzle.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.swizzle.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.persistence.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.persistence.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.hibernate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hibernate
  </require>
  <require extend='false' filter='(&amp;(package=org.hibernate.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hibernate.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.quartz
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.openejb.openejb-core/3.0.1' presentationname='openejb-core' symbolicname='org.apache.openejb.openejb-core' uri='../org/apache/openejb/openejb-core/3.0.1/openejb-core-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1271094
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-core'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-core'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.resource'/>
    <p n='uses' v='org.apache.geronimo.transaction.manager,javax.resource.spi,org.apache.geronimo.transaction.log,org.apache.geronimo.connector.outbound.connectionmanagerconfig,org.apache.openejb.loader,javax.resource,org.apache.geronimo.connector.outbound.connectiontracking,javax.transaction,org.apache.geronimo.connector.outbound'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.cmp.cmp2'/>
    <p n='uses' v='org.objectweb.asm,org.apache.openejb,javax.ejb,org.apache.openejb.core.cmp,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.config'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.xml.namespace,javax.enterprise.deploy.model,org.apache.openejb.core.webservices,org.apache.openejb.cli,org.apache.openejb,javax.naming,javax.wsdl.factory,javax.xml.parsers,javax.persistence,javax.xml.ws,org.objectweb.asm.commons,org.apache.openejb.util,javax.enterprise.deploy.spi,javax.wsdl.xml,org.apache.openejb.jee.sun,org.apache.openejb.jee.wls,javax.wsdl.extensions.http,org.apache.openejb.assembler,javax.enterprise.deploy.spi.factories,org.apache.openejb.loader,org.xml.sax.helpers,org.apache.openejb.jee,org.apache.openejb.assembler.classic,javax.xml.bind,javax.annotation.security,javax.jms,org.apache.openejb.config.rules,org.codehaus.swizzle.stream,javax.enterprise.deploy.spi.exceptions,org.apache.openejb.jee.oejb2,javax.interceptor,org.apache.openejb.core.cmp,org.apache.openejb.jee.jpa,org.apache.openejb.jee.jpa.unit,javax.wsdl,org.apache.openejb.config.sys,org.xml.sax,org.apache.openejb.jee.oejb3,javax.enterprise.deploy.spi.status,org.apache.xbean.finder,org.objectweb.asm,javax.ejb,javax.enterprise.deploy.shared,javax.annotation,javax.jws,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.transaction'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.security.jacc'/>
    <p n='uses' v='org.apache.openejb.loader,javax.security.jacc,org.apache.openejb.core.security'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.ri.sp'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.spi,javax.security.auth.login,javax.security.jacc,javax.transaction.xa,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.mdb'/>
    <p n='uses' v='org.apache.geronimo.transaction.manager,org.apache.openejb.util,javax.resource.spi,org.apache.openejb.core.transaction,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,javax.transaction.xa,org.apache.openejb,javax.resource.spi.endpoint,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.core.timer,javax.resource,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.webservices'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.soap,org.apache.openejb.util,javax.wsdl.xml,org.xml.sax,javax.xml.namespace,javax.xml.transform,org.apache.openejb,javax.naming,javax.jws,javax.xml.ws.spi,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.cli'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.loader,org.apache.xbean.finder,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.xbean.recipe,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.core.timer,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='mandatory' v='partial'/>
    <p n='package' v='org.apache.openejb.client'/>
    <p n='partial' v='true'/>
    <p n='uses' v='javax.naming,org.apache.openejb.loader,javax.naming.spi'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.spi'/>
    <p n='uses' v='javax.ejb,javax.naming,javax.security.auth.login,javax.resource.spi,javax.resource,org.apache.openejb.core,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.cmp'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.transaction,org.apache.openejb,org.apache.openejb.core.entity,javax.ejb,org.apache.openejb.spi,org.apache.openejb.core.timer,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.resources'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.resource.activemq'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.openejb.util,javax.resource.spi,javax.sql,org.apache.openejb.spi,javax.naming,org.apache.activemq.ra,org.apache.activemq.store.memory,org.apache.openejb.loader,org.apache.activemq.store.jdbc,org.apache.activemq.store'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.hibernate'/>
    <p n='uses' v='org.hibernate,org.hibernate.transaction,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.urlhandler.resource'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.ivm'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.stateless,org.apache.openejb,org.apache.openejb.core.entity,javax.ejb,org.apache.openejb.spi,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy,org.apache.openejb.core.stateful'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core'/>
    <p n='uses' v='javax.resource.spi,org.apache.openejb.core.transaction,org.apache.openejb.core.mdb,org.apache.openejb,org.apache.openejb.spi,org.apache.openejb.core.cmp,javax.naming,javax.xml.rpc.handler,org.apache.openejb.core.ivm,javax.transaction,org.apache.openejb.core.ivm.naming,org.apache.openejb.core.stateful,org.objectweb.asm.commons,org.apache.openejb.util,org.apache.openejb.core.stateless,org.objectweb.asm,org.omg.CORBA,javax.ejb,org.apache.openejb.core.timer,org.apache.openejb.loader,javax.resource,javax.mail,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.ivm.naming'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.openejb.util,javax.security.auth.login,javax.xml.namespace,org.apache.xbean.naming.context,org.apache.openejb.core.webservices,javax.naming.spi,org.apache.openejb,org.apache.openejb.spi,javax.naming,javax.xml.rpc,org.apache.openejb.loader,javax.persistence,org.apache.openejb.core,org.apache.openejb.core.ivm,javax.xml.ws,org.apache.xbean.naming.reference,javax.xml.registry'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.stateful'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.persistence,org.apache.openejb.core.transaction,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,org.apache.openejb,org.apache.openejb.spi,javax.ejb,javax.naming,javax.xml.rpc.handler,org.apache.openejb.loader,javax.persistence,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.xbean.finder,org.objectweb.asm,org.apache.openejb,sun.misc,org.apache.log4j,javax.naming,org.apache.openejb.loader,javax.xml.parsers,javax.transaction'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.config.sys'/>
    <p n='uses' v='org.apache.openejb.util,org.xml.sax,org.apache.openejb.config,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,org.apache.xbean.finder,org.apache.openejb,javax.xml.transform,javax.xml.transform.sax,javax.xml.parsers,org.xml.sax.helpers,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.persistence'/>
    <p n='uses' v='javax.persistence.spi,javax.persistence,javax.transaction,javax.sql'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.cmp.jpa'/>
    <p n='uses' v='org.apache.openejb.core.cmp.cmp2,org.apache.openjpa.event,org.apache.openjpa.persistence,org.apache.openejb,javax.ejb,org.apache.openejb.core.cmp,javax.naming,javax.persistence,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.alt.util.resources'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.stateless'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.openejb.util,org.apache.openejb.core.transaction,org.apache.xbean.recipe,org.w3c.dom,org.apache.openejb.core.interceptor,javax.interceptor,org.apache.xbean.finder,org.apache.openejb,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.core.timer,javax.xml.rpc.handler,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.xml.ws,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.mgmt'/>
    <p n='uses' v='javax.ejb,javax.management,javax.management.j2ee'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.interceptor'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.rpc.handler,javax.interceptor,org.apache.openejb.core'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.security.jaas'/>
    <p n='uses' v='org.apache.openejb.util,javax.security.auth.spi,javax.security.auth.login,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.resource.jdbc'/>
    <p n='uses' v='org.apache.geronimo.transaction.manager,org.apache.openejb.util,javax.transaction.xa,org.apache.commons.dbcp.managed,org.apache.xbean.finder,javax.sql,org.apache.commons.dbcp,org.apache.openejb.loader,javax.transaction'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler.classic.cmd'/>
    <p n='uses' v='org.apache.openejb.util,javax.ejb,javax.naming,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.security'/>
    <p n='uses' v='org.apache.openejb.util,javax.security.auth.login,org.apache.openejb.core.security.jaas,org.apache.openejb.core.security.jacc,org.apache.openejb,org.apache.openejb.spi,org.apache.openejb.loader,javax.security.jacc,org.apache.openejb.core,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.entity'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.transaction,org.apache.openejb,javax.ejb,org.apache.openejb.spi,org.apache.openejb.core.timer,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler.dynamic'/>
    <p n='uses' v='org.apache.openejb.assembler.classic'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.timer'/>
    <p n='uses' v='org.apache.openejb.util,javax.sql,org.apache.openejb,org.apache.openejb.spi,javax.ejb,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler'/>
    <p n='uses' v='org.apache.openejb.spi,javax.ejb,org.apache.openejb.loader,org.apache.openejb.config,org.apache.openejb.assembler.classic,org.apache.openejb'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.io'/>
    <p n='uses' v='org.apache.openejb.util'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler.classic'/>
    <p n='uses' v='org.codehaus.swizzle.stream,org.apache.openejb.resource,org.apache.openejb.core.cmp.cmp2,javax.resource.spi,javax.resource.spi.work,javax.ejb.spi,javax.xml.namespace,javax.interceptor,org.apache.openejb.core.webservices,javax.sql,org.apache.openejb,org.apache.openejb.core.cmp,org.apache.openejb.spi,javax.naming,javax.persistence,org.apache.openejb.core,javax.xml.ws,javax.transaction,org.apache.openejb.core.ivm.naming,org.apache.openejb.javaagent,org.apache.geronimo.connector,javax.persistence.spi,org.apache.geronimo.transaction.manager,org.apache.openejb.util,org.apache.openejb.persistence,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,org.apache.xbean.naming.context,org.omg.CORBA,org.apache.geronimo.connector.work,javax.ejb,org.apache.openejb.core.timer,org.apache.openejb.loader,javax.security.jacc,javax.jms,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.ivm.naming.java'/>
    <p n='uses' v='org.apache.openejb.spi,javax.naming,org.apache.openejb.loader,org.apache.openejb.core,javax.naming.spi'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.proxy'/>
    <p n='uses' v='org.apache.openejb'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.config.rules'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.config,javax.interceptor,org.apache.xbean.finder,org.apache.openejb,javax.ejb,javax.annotation,javax.jws,org.apache.openejb.jee,javax.annotation.security'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation.security
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.model
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.shared)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.shared
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi.exceptions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi.exceptions
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi.factories)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi.factories
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi.status)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi.status
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.j2ee)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.j2ee
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.work)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.work
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.jacc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.jacc
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.registry
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.rpc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.rpc.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.broker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.ra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.ra
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.store
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.jdbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.store.jdbc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.memory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.store.memory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.cli)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.cli
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.dbcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp.managed)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.dbcp.managed
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound.connectionmanagerconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound.connectionmanagerconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound.connectiontracking)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound.connectiontracking
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.work)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.work
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.transaction.log
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.manager)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.transaction.manager
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.alt.util.resources)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.alt.util.resources ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic.cmd)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic.cmd ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.dynamic)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.dynamic ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.cli)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.cli ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client)(version&gt;=3.0.1)(mandatory=partial)(partial=true)(mandatory:&lt;*mandatory, partial))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config.rules)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config.rules ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config.sys)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config.sys ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.cmp)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.cmp ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.cmp.cmp2)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.cmp.cmp2 ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.cmp.jpa)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.cmp.jpa ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.entity)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.entity ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.interceptor)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.interceptor ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming.java)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming.java ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.mdb)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.mdb ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security.jaas)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security.jaas ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security.jacc)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security.jacc ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.stateful)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.stateful ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.stateless)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.stateless ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.timer)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.timer ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.transaction)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.transaction ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.hibernate)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.hibernate ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.javaagent)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.javaagent ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa.unit)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa.unit ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb2)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb2 ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb3)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb3 ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.sun)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.sun ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.wls)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.wls ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.mgmt)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.mgmt ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.persistence)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.persistence ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource.activemq)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource.activemq ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource.jdbc)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource.jdbc ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.ri.sp)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.ri.sp ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.io)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.io ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.proxy)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.proxy ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.resources)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.resources ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.urlhandler.resource)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.urlhandler.resource
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.persistence
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.context)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.context ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.reference)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.reference ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.recipe)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.recipe ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.swizzle.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.swizzle.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.hibernate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hibernate
  </require>
  <require extend='false' filter='(&amp;(package=org.hibernate.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hibernate.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.openejb.openejb-core/3.0.0' presentationname='openejb-core' symbolicname='org.apache.openejb.openejb-core' uri='../org/apache/openejb/openejb-core/3.0/openejb-core-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1265723
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-core'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-core'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.resource'/>
    <p n='uses' v='org.apache.geronimo.transaction.manager,javax.resource.spi,org.apache.geronimo.transaction.log,org.apache.geronimo.connector.outbound.connectionmanagerconfig,org.apache.openejb.loader,javax.resource,org.apache.geronimo.connector.outbound.connectiontracking,javax.transaction,org.apache.geronimo.connector.outbound'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.cmp.cmp2'/>
    <p n='uses' v='org.objectweb.asm,org.apache.openejb,javax.ejb,org.apache.openejb.core.cmp,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.config'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.xml.namespace,javax.enterprise.deploy.model,org.apache.openejb.core.webservices,org.apache.openejb.cli,org.apache.openejb,javax.naming,javax.wsdl.factory,javax.xml.parsers,javax.persistence,javax.xml.ws,org.objectweb.asm.commons,org.apache.openejb.util,javax.enterprise.deploy.spi,javax.wsdl.xml,org.apache.openejb.jee.sun,org.apache.openejb.jee.wls,javax.wsdl.extensions.http,org.apache.openejb.assembler,javax.enterprise.deploy.spi.factories,org.apache.openejb.loader,org.xml.sax.helpers,org.apache.openejb.jee,org.apache.openejb.assembler.classic,javax.xml.bind,javax.annotation.security,javax.jms,org.apache.openejb.config.rules,org.codehaus.swizzle.stream,javax.enterprise.deploy.spi.exceptions,org.apache.openejb.jee.oejb2,javax.interceptor,org.apache.openejb.core.cmp,org.apache.openejb.jee.jpa,org.apache.openejb.jee.jpa.unit,javax.wsdl,org.apache.openejb.config.sys,org.xml.sax,org.apache.openejb.jee.oejb3,javax.enterprise.deploy.spi.status,org.apache.xbean.finder,org.objectweb.asm,javax.ejb,javax.enterprise.deploy.shared,javax.annotation,javax.jws,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.transaction'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.security.jacc'/>
    <p n='uses' v='org.apache.openejb.loader,javax.security.jacc,org.apache.openejb.core.security'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.ri.sp'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.spi,javax.security.auth.login,javax.security.jacc,javax.transaction.xa,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.mdb'/>
    <p n='uses' v='org.apache.geronimo.transaction.manager,org.apache.openejb.util,javax.resource.spi,org.apache.openejb.core.transaction,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,javax.transaction.xa,org.apache.openejb,javax.resource.spi.endpoint,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.core.timer,javax.resource,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.webservices'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.soap,org.apache.openejb.util,javax.wsdl.xml,org.xml.sax,javax.xml.namespace,javax.xml.transform,org.apache.openejb,javax.naming,javax.jws,javax.xml.ws.spi,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.cli'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.loader,org.apache.xbean.finder,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.xbean.recipe,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.core.timer,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='mandatory' v='partial'/>
    <p n='package' v='org.apache.openejb.client'/>
    <p n='partial' v='true'/>
    <p n='uses' v='javax.naming,org.apache.openejb.loader,javax.naming.spi'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.spi'/>
    <p n='uses' v='javax.ejb,javax.naming,javax.security.auth.login,javax.resource.spi,javax.resource,org.apache.openejb.core,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.cmp'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.transaction,org.apache.openejb,org.apache.openejb.core.entity,javax.ejb,org.apache.openejb.spi,org.apache.openejb.core.timer,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.resources'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.resource.activemq'/>
    <p n='uses' v='org.apache.activemq.broker,org.apache.openejb.util,javax.resource.spi,javax.sql,org.apache.openejb.spi,javax.naming,org.apache.activemq.ra,org.apache.activemq.store.memory,org.apache.openejb.loader,org.apache.activemq.store.jdbc,org.apache.activemq.store'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.hibernate'/>
    <p n='uses' v='org.hibernate,org.hibernate.transaction,javax.transaction,org.apache.openejb'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.urlhandler.resource'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.ivm'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.stateless,org.apache.openejb,org.apache.openejb.core.entity,javax.ejb,org.apache.openejb.spi,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy,org.apache.openejb.core.stateful'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core'/>
    <p n='uses' v='javax.resource.spi,org.apache.openejb.core.transaction,org.apache.openejb.core.mdb,org.apache.openejb,org.apache.openejb.spi,org.apache.openejb.core.cmp,javax.naming,javax.xml.rpc.handler,org.apache.openejb.core.ivm,javax.transaction,org.apache.openejb.core.ivm.naming,org.apache.openejb.core.stateful,org.objectweb.asm.commons,org.apache.openejb.util,org.apache.openejb.core.stateless,org.objectweb.asm,org.omg.CORBA,javax.ejb,org.apache.openejb.core.timer,org.apache.openejb.loader,javax.resource,javax.mail,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.ivm.naming'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.openejb.util,javax.security.auth.login,javax.xml.namespace,org.apache.xbean.naming.context,org.apache.openejb.core.webservices,javax.naming.spi,org.apache.openejb,org.apache.openejb.spi,javax.naming,javax.xml.rpc,org.apache.openejb.loader,javax.persistence,org.apache.openejb.core,org.apache.openejb.core.ivm,javax.xml.ws,org.apache.xbean.naming.reference,javax.xml.registry'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.stateful'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.persistence,org.apache.openejb.core.transaction,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,org.apache.openejb,org.apache.openejb.spi,javax.ejb,javax.naming,javax.xml.rpc.handler,org.apache.openejb.loader,javax.persistence,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.xbean.finder,org.objectweb.asm,org.apache.openejb,sun.misc,org.apache.log4j,javax.naming,org.apache.openejb.loader,javax.xml.parsers,javax.transaction'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.config.sys'/>
    <p n='uses' v='org.apache.openejb.util,org.xml.sax,org.apache.openejb.config,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,org.apache.xbean.finder,org.apache.openejb,javax.xml.transform,javax.xml.transform.sax,javax.xml.parsers,org.xml.sax.helpers,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.persistence'/>
    <p n='uses' v='javax.persistence.spi,javax.persistence,javax.transaction,javax.sql'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.cmp.jpa'/>
    <p n='uses' v='org.apache.openejb.core.cmp.cmp2,org.apache.openjpa.event,org.apache.openjpa.persistence,org.apache.openejb,javax.ejb,org.apache.openejb.core.cmp,javax.naming,javax.persistence,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.alt.util.resources'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.stateless'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.openejb.util,org.apache.openejb.core.transaction,org.apache.xbean.recipe,org.w3c.dom,org.apache.openejb.core.interceptor,javax.interceptor,org.apache.xbean.finder,org.apache.openejb,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.core.timer,javax.xml.rpc.handler,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.xml.ws,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.mgmt'/>
    <p n='uses' v='javax.ejb,javax.management,javax.management.j2ee'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.interceptor'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.rpc.handler,javax.interceptor,org.apache.openejb.core'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.security.jaas'/>
    <p n='uses' v='org.apache.openejb.util,javax.security.auth.spi,javax.security.auth.login,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.resource.jdbc'/>
    <p n='uses' v='org.apache.geronimo.transaction.manager,org.apache.openejb.util,javax.transaction.xa,org.apache.commons.dbcp.managed,org.apache.xbean.finder,javax.sql,org.apache.commons.dbcp,org.apache.openejb.loader,javax.transaction'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler.classic.cmd'/>
    <p n='uses' v='org.apache.openejb.util,javax.ejb,javax.naming,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.security'/>
    <p n='uses' v='org.apache.openejb.util,javax.security.auth.login,org.apache.openejb.core.security.jaas,org.apache.openejb.core.security.jacc,org.apache.openejb,org.apache.openejb.spi,org.apache.openejb.loader,javax.security.jacc,org.apache.openejb.core,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.entity'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.core.transaction,org.apache.openejb,javax.ejb,org.apache.openejb.spi,org.apache.openejb.core.timer,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.transaction,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler.dynamic'/>
    <p n='uses' v='org.apache.openejb.assembler.classic'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.timer'/>
    <p n='uses' v='org.apache.openejb.util,javax.sql,org.apache.openejb,org.apache.openejb.spi,javax.ejb,org.apache.openejb.loader,org.apache.openejb.core,javax.transaction'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler'/>
    <p n='uses' v='org.apache.openejb.spi,javax.ejb,org.apache.openejb.loader,org.apache.openejb.config,org.apache.openejb.assembler.classic,org.apache.openejb'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.io'/>
    <p n='uses' v='org.apache.openejb.util'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.assembler.classic'/>
    <p n='uses' v='org.codehaus.swizzle.stream,org.apache.openejb.resource,org.apache.openejb.core.cmp.cmp2,javax.resource.spi,javax.resource.spi.work,javax.ejb.spi,javax.xml.namespace,javax.interceptor,org.apache.openejb.core.webservices,javax.sql,org.apache.openejb,org.apache.openejb.core.cmp,org.apache.openejb.spi,javax.naming,javax.persistence,org.apache.openejb.core,javax.xml.ws,javax.transaction,org.apache.openejb.core.ivm.naming,org.apache.openejb.javaagent,org.apache.geronimo.connector,javax.persistence.spi,org.apache.geronimo.transaction.manager,org.apache.openejb.util,org.apache.openejb.persistence,org.apache.xbean.recipe,org.apache.openejb.core.interceptor,org.apache.xbean.naming.context,org.omg.CORBA,org.apache.geronimo.connector.work,javax.ejb,org.apache.openejb.core.timer,org.apache.openejb.loader,javax.security.jacc,javax.jms,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.core.ivm.naming.java'/>
    <p n='uses' v='org.apache.openejb.spi,javax.naming,org.apache.openejb.loader,org.apache.openejb.core,javax.naming.spi'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.util.proxy'/>
    <p n='uses' v='org.apache.openejb'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.config.rules'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.config,javax.interceptor,org.apache.xbean.finder,org.apache.openejb,javax.ejb,javax.annotation,javax.jws,org.apache.openejb.jee,javax.annotation.security'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation.security
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.model
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.shared)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.shared
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi.exceptions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi.exceptions
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi.factories)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi.factories
  </require>
  <require extend='false' filter='(&amp;(package=javax.enterprise.deploy.spi.status)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.enterprise.deploy.spi.status
  </require>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.j2ee)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.j2ee
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.work)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.work
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.jacc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.jacc
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.registry
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.rpc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.rpc.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.broker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.ra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.ra
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.store
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.jdbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.store.jdbc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.memory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.store.memory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.cli)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.cli
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.dbcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp.managed)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.dbcp.managed
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound.connectionmanagerconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound.connectionmanagerconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound.connectiontracking)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound.connectiontracking
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.work)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.work
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.transaction.log
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.manager)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.transaction.manager
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.alt.util.resources)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.alt.util.resources ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic.cmd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic.cmd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.dynamic)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.dynamic ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.cli)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.cli ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client)(version&gt;=3.0.0)(mandatory=partial)(partial=true)(mandatory:&lt;*mandatory, partial))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config.rules)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config.rules ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config.sys)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config.sys ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.cmp)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.cmp ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.cmp.cmp2)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.cmp.cmp2 ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.cmp.jpa)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.cmp.jpa ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.entity)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.entity ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.interceptor)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.interceptor ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming.java)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming.java ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.mdb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.mdb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security.jaas)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security.jaas ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.security.jacc)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.security.jacc ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.stateful)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.stateful ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.stateless)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.stateless ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.timer)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.timer ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.transaction)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.transaction ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.hibernate)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.hibernate ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.javaagent)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.javaagent ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa.unit)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa.unit ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb2)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb2 ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb3)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb3 ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.sun)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.sun ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.wls)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.wls ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.mgmt)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.mgmt ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.persistence)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.persistence ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource.activemq)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource.activemq ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.resource.jdbc)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.resource.jdbc ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.ri.sp)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.ri.sp ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.io)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.io ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.proxy)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.proxy ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.resources)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.resources ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.urlhandler.resource)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.urlhandler.resource
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.persistence
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.4.0.r636442))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.4.0.r636442
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.context)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.context ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.reference)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.reference ;version=3.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.recipe)(version&gt;=3.4.0.r636442))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.recipe ;version=3.4.0.r636442
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.swizzle.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.swizzle.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.hibernate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hibernate
  </require>
  <require extend='false' filter='(&amp;(package=org.hibernate.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hibernate.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.openejb.openejb-webservices/3.0.0.beta-2' presentationname='openejb-webservices' symbolicname='org.apache.openejb.openejb-webservices' uri='../org/apache/openejb/openejb-webservices/3.0-beta-2/openejb-webservices-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    44304
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-webservices'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-webservices'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.webservices.saaj'/>
    <p n='uses' v='javax.xml.soap,org.apache.openejb.util,javax.xml.namespace'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.webservices'/>
    <p n='uses' v='org.codehaus.swizzle.stream,javax.servlet.http,javax.wsdl.extensions.soap,org.apache.openejb.config,javax.xml.namespace,org.apache.openejb.core.webservices,org.apache.openejb.server.httpd,org.apache.openejb,org.apache.openejb.spi,javax.naming,javax.servlet,javax.xml.rpc.handler,org.apache.openejb.server,org.apache.openejb.core,javax.wsdl,org.apache.openejb.util,javax.xml.rpc,org.apache.openejb.loader,org.apache.openejb.assembler.classic,javax.xml.rpc.server'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.server)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.server
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.swizzle.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.swizzle.stream
  </require>
</resource>
<resource id='org.apache.openejb.openejb-webservices/3.0.1' presentationname='openejb-webservices' symbolicname='org.apache.openejb.openejb-webservices' uri='../org/apache/openejb/openejb-webservices/3.0.1/openejb-webservices-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    44268
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-webservices'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-webservices'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.webservices.saaj'/>
    <p n='uses' v='javax.xml.soap,org.apache.openejb.util,javax.xml.namespace'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.webservices'/>
    <p n='uses' v='org.codehaus.swizzle.stream,javax.servlet.http,javax.wsdl.extensions.soap,org.apache.openejb.config,javax.xml.namespace,org.apache.openejb.core.webservices,org.apache.openejb.server.httpd,org.apache.openejb,org.apache.openejb.spi,javax.naming,javax.servlet,javax.xml.rpc.handler,org.apache.openejb.server,org.apache.openejb.core,javax.wsdl,org.apache.openejb.util,javax.xml.rpc,org.apache.openejb.loader,org.apache.openejb.assembler.classic,javax.xml.rpc.server'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.server)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.server
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.swizzle.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.swizzle.stream
  </require>
</resource>
<resource id='org.apache.openejb.openejb-webservices/3.1.1' presentationname='openejb-webservices' symbolicname='org.apache.openejb.openejb-webservices' uri='../org/apache/openejb/openejb-webservices/3.1.1/openejb-webservices-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    46317
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-webservices'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-webservices'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.webservices.saaj'/>
    <p n='uses' v='javax.xml.soap,org.apache.openejb.util,javax.xml.namespace'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.webservices'/>
    <p n='uses' v='org.codehaus.swizzle.stream,javax.servlet.http,javax.wsdl.extensions.soap,javax.security.auth.login,org.apache.openejb.config,javax.xml.namespace,org.apache.openejb.core.webservices,org.apache.openejb.server.httpd,org.apache.openejb,org.apache.openejb.spi,javax.naming,javax.servlet,javax.xml.rpc.handler,org.apache.openejb.server,org.apache.openejb.core,javax.wsdl,org.apache.openejb.util,javax.xml.rpc,org.apache.openejb.loader,org.apache.openejb.assembler.classic,javax.xml.rpc.server'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.server)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.server
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.swizzle.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.swizzle.stream
  </require>
</resource>
<resource id='org.apache.openejb.openejb-webservices/3.0.0' presentationname='openejb-webservices' symbolicname='org.apache.openejb.openejb-webservices' uri='../org/apache/openejb/openejb-webservices/3.0/openejb-webservices-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    44379
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-webservices'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-webservices'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.webservices.saaj'/>
    <p n='uses' v='javax.xml.soap,org.apache.openejb.util,javax.xml.namespace'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.webservices'/>
    <p n='uses' v='org.codehaus.swizzle.stream,javax.servlet.http,javax.wsdl.extensions.soap,org.apache.openejb.config,javax.xml.namespace,org.apache.openejb.core.webservices,org.apache.openejb.server.httpd,org.apache.openejb,org.apache.openejb.spi,javax.naming,javax.servlet,javax.xml.rpc.handler,org.apache.openejb.server,org.apache.openejb.core,javax.wsdl,org.apache.openejb.util,javax.xml.rpc,org.apache.openejb.loader,org.apache.openejb.assembler.classic,javax.xml.rpc.server'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.server)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.server
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.swizzle.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.swizzle.stream
  </require>
</resource>
<resource id='org.apache.openejb.openejb-webservices/3.1.0' presentationname='openejb-webservices' symbolicname='org.apache.openejb.openejb-webservices' uri='../org/apache/openejb/openejb-webservices/3.1/openejb-webservices-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    44355
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-webservices'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-webservices'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.webservices.saaj'/>
    <p n='uses' v='javax.xml.soap,org.apache.openejb.util,javax.xml.namespace'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.webservices'/>
    <p n='uses' v='org.codehaus.swizzle.stream,javax.servlet.http,javax.wsdl.extensions.soap,org.apache.openejb.config,javax.xml.namespace,org.apache.openejb.core.webservices,org.apache.openejb.server.httpd,org.apache.openejb,org.apache.openejb.spi,javax.naming,javax.servlet,javax.xml.rpc.handler,org.apache.openejb.server,org.apache.openejb.core,javax.wsdl,org.apache.openejb.util,javax.xml.rpc,org.apache.openejb.loader,org.apache.openejb.assembler.classic,javax.xml.rpc.server'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.server)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.server
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.webservices.saaj)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.webservices.saaj ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.swizzle.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.swizzle.stream
  </require>
</resource>
<resource id='org.apache.openejb.openejb-javaagent/3.0.0.beta-2' presentationname='openejb-javaagent' symbolicname='org.apache.openejb.openejb-javaagent' uri='../org/apache/openejb/openejb-javaagent/3.0-beta-2/openejb-javaagent-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10966
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-javaagent'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-javaagent'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.javaagent'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.javaagent)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.javaagent ;version=3.0.0.beta-2
  </require>
</resource>
<resource id='org.apache.openejb.openejb-javaagent/3.0.0' presentationname='openejb-javaagent' symbolicname='org.apache.openejb.openejb-javaagent' uri='../org/apache/openejb/openejb-javaagent/3.0/openejb-javaagent-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11111
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-javaagent'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-javaagent'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.javaagent'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.javaagent)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.javaagent ;version=3.0.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-javaagent/3.1.1' presentationname='openejb-javaagent' symbolicname='org.apache.openejb.openejb-javaagent' uri='../org/apache/openejb/openejb-javaagent/3.1.1/openejb-javaagent-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12847
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-javaagent'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-javaagent'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.javaagent'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.javaagent)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.javaagent ;version=3.1.1
  </require>
</resource>
<resource id='org.apache.openejb.openejb-javaagent/3.0.1' presentationname='openejb-javaagent' symbolicname='org.apache.openejb.openejb-javaagent' uri='../org/apache/openejb/openejb-javaagent/3.0.1/openejb-javaagent-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11114
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-javaagent'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-javaagent'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.javaagent'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.javaagent)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.javaagent ;version=3.0.1
  </require>
</resource>
<resource id='org.apache.openejb.openejb-javaagent/3.1.0' presentationname='openejb-javaagent' symbolicname='org.apache.openejb.openejb-javaagent' uri='../org/apache/openejb/openejb-javaagent/3.1/openejb-javaagent-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12845
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-javaagent'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-javaagent'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.javaagent'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.javaagent)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.javaagent ;version=3.1.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-naming/3.0.0.beta-2' presentationname='openejb-tomcat-naming' symbolicname='org.apache.openejb.openejb-tomcat-naming' uri='../org/apache/openejb/openejb-tomcat-naming/3.0-beta-2/openejb-tomcat-naming-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    25161
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-naming'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-naming'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.naming'/>
    <p n='uses' v='javax.xml.namespace,javax.naming.spi,org.apache.naming,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.loader,javax.annotation,javax.persistence,org.apache.openejb.core,org.apache.openejb.core.ivm,javax.transaction,javax.xml.ws,org.apache.openejb.core.ivm.naming'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.naming)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.naming ;version=3.0.0.beta-2
  </require>
</resource>
<resource id='org.apache.openejb.openejb-itests-servlets/3.0.0' presentationname='openejb-itests-servlets' symbolicname='org.apache.openejb.openejb-itests-servlets' uri='../org/apache/openejb/openejb-itests-servlets/3.0/openejb-itests-servlets-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20404
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-servlets'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-servlets'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.servlet'/>
    <p n='uses' v='javax.servlet.http,javax.sql,org.apache.openejb.test.stateless,org.apache.openejb.test.entity.bmp,javax.ejb,javax.naming,javax.servlet,org.apache.openejb.test.stateful,javax.annotation,javax.jws,javax.persistence,junit.framework,javax.xml.ws,javax.jms'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.bmp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.bmp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.servlet)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.servlet ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless
  </require>
</resource>
<resource id='org.apache.openejb.openejb-itests-servlets/3.1.0' presentationname='openejb-itests-servlets' symbolicname='org.apache.openejb.openejb-itests-servlets' uri='../org/apache/openejb/openejb-itests-servlets/3.1/openejb-itests-servlets-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26501
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-servlets'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-servlets'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.servlet'/>
    <p n='uses' v='javax.servlet.http,javax.sql,org.apache.openejb.test.stateless,org.apache.openejb.test.entity.bmp,javax.ejb,javax.naming,javax.servlet,org.apache.openejb.test.stateful,javax.annotation,javax.jws,javax.persistence,junit.framework,javax.xml.ws,javax.annotation.security,javax.jms'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation.security
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.bmp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.bmp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.servlet)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.servlet ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless
  </require>
</resource>
<resource id='org.apache.openejb.openejb-itests-servlets/3.1.1' presentationname='openejb-itests-servlets' symbolicname='org.apache.openejb.openejb-itests-servlets' uri='../org/apache/openejb/openejb-itests-servlets/3.1.1/openejb-itests-servlets-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26508
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-servlets'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-servlets'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.servlet'/>
    <p n='uses' v='javax.servlet.http,javax.sql,org.apache.openejb.test.stateless,org.apache.openejb.test.entity.bmp,javax.ejb,javax.naming,javax.servlet,org.apache.openejb.test.stateful,javax.annotation,javax.jws,javax.persistence,junit.framework,javax.xml.ws,javax.annotation.security,javax.jms'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation.security
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.bmp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.bmp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.servlet)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.servlet ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless
  </require>
</resource>
<resource id='org.apache.openejb.openejb-itests-servlets/3.0.1' presentationname='openejb-itests-servlets' symbolicname='org.apache.openejb.openejb-itests-servlets' uri='../org/apache/openejb/openejb-itests-servlets/3.0.1/openejb-itests-servlets-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20400
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-servlets'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-servlets'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.servlet'/>
    <p n='uses' v='javax.servlet.http,javax.sql,org.apache.openejb.test.stateless,org.apache.openejb.test.entity.bmp,javax.ejb,javax.naming,javax.servlet,org.apache.openejb.test.stateful,javax.annotation,javax.jws,javax.persistence,junit.framework,javax.xml.ws,javax.jms'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.bmp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.bmp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.servlet)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.servlet ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless
  </require>
</resource>
<resource id='org.apache.openejb.openejb-admin/3.1.1' presentationname='openejb-admin' symbolicname='org.apache.openejb.openejb-admin' uri='../org/apache/openejb/openejb-admin/3.1.1/openejb-admin-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10010
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-admin'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-admin'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-admin/3.0.1' presentationname='openejb-admin' symbolicname='org.apache.openejb.openejb-admin' uri='../org/apache/openejb/openejb-admin/3.0.1/openejb-admin-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    9719
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-admin'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-admin'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-admin/3.1.0' presentationname='openejb-admin' symbolicname='org.apache.openejb.openejb-admin' uri='../org/apache/openejb/openejb-admin/3.1/openejb-admin-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    9871
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-admin'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-admin'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-admin/3.0.0.beta-2' presentationname='openejb-admin' symbolicname='org.apache.openejb.openejb-admin' uri='../org/apache/openejb/openejb-admin/3.0-beta-2/openejb-admin-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    9927
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-admin'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-admin'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-admin/3.0.0' presentationname='openejb-admin' symbolicname='org.apache.openejb.openejb-admin' uri='../org/apache/openejb/openejb-admin/3.0/openejb-admin-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    9815
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-admin'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-admin'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-ejbd/3.0.0' presentationname='openejb-ejbd' symbolicname='org.apache.openejb.openejb-ejbd' uri='../org/apache/openejb/openejb-ejbd/3.0/openejb-ejbd-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    41690
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-ejbd'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-ejbd'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.ejbd'/>
    <p n='uses' v='org.apache.openejb.util,javax.xml.namespace,org.apache.openejb.core.webservices,org.omg.CORBA,javax.sql,org.apache.openejb.client,org.apache.openejb,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.core,org.apache.openejb.core.ivm.naming,org.apache.openejb.util.proxy,javax.jms'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.ejbd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.ejbd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.proxy)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.proxy ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
</resource>
<resource id='org.apache.openejb.openejb-ejbd/3.0.1' presentationname='openejb-ejbd' symbolicname='org.apache.openejb.openejb-ejbd' uri='../org/apache/openejb/openejb-ejbd/3.0.1/openejb-ejbd-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    41581
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-ejbd'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-ejbd'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.ejbd'/>
    <p n='uses' v='org.apache.openejb.util,javax.xml.namespace,org.apache.openejb.core.webservices,org.omg.CORBA,javax.sql,org.apache.openejb.client,org.apache.openejb,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.core,org.apache.openejb.core.ivm.naming,org.apache.openejb.util.proxy,javax.jms'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.ejbd)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.ejbd ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.proxy)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.proxy ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
</resource>
<resource id='org.apache.openejb.openejb-ejbd/3.1.1' presentationname='openejb-ejbd' symbolicname='org.apache.openejb.openejb-ejbd' uri='../org/apache/openejb/openejb-ejbd/3.1.1/openejb-ejbd-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    56184
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-ejbd'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-ejbd'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.ejbd'/>
    <p n='uses' v='javax.xml.namespace,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.openejb.client,javax.sql,org.apache.openejb.spi,javax.naming,org.apache.openejb.server,org.apache.openejb.core,org.apache.openejb.core.ivm,org.apache.openejb.core.ivm.naming,org.apache.openejb.util,org.omg.CORBA,javax.ejb,org.apache.openejb.loader,org.apache.openejb.util.proxy,javax.jms'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.ejbd)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.ejbd ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.proxy)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.proxy ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
</resource>
<resource id='org.apache.openejb.openejb-ejbd/3.0.0.beta-2' presentationname='openejb-ejbd' symbolicname='org.apache.openejb.openejb-ejbd' uri='../org/apache/openejb/openejb-ejbd/3.0-beta-2/openejb-ejbd-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    39951
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-ejbd'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-ejbd'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.ejbd'/>
    <p n='uses' v='org.apache.openejb.util,javax.xml.namespace,org.apache.openejb.core.webservices,org.omg.CORBA,javax.sql,org.apache.openejb.client,org.apache.openejb,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.core,org.apache.openejb.core.ivm.naming,org.apache.openejb.util.proxy,javax.jms'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.ejbd)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.ejbd ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.proxy)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.proxy ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
</resource>
<resource id='org.apache.openejb.openejb-ejbd/3.1.0' presentationname='openejb-ejbd' symbolicname='org.apache.openejb.openejb-ejbd' uri='../org/apache/openejb/openejb-ejbd/3.1/openejb-ejbd-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    54904
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-ejbd'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-ejbd'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.ejbd'/>
    <p n='uses' v='javax.xml.namespace,org.apache.openejb.core.webservices,org.apache.openejb,org.apache.openejb.client,javax.sql,org.apache.openejb.spi,javax.naming,org.apache.openejb.server,org.apache.openejb.core,org.apache.openejb.core.ivm,org.apache.openejb.core.ivm.naming,org.apache.openejb.util,org.omg.CORBA,javax.ejb,org.apache.openejb.loader,javax.jms,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.webservices)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.webservices ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.ejbd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.ejbd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.proxy)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.proxy ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
</resource>
<resource id='org.apache.openejb.openejb-http/3.1.1' presentationname='openejb-http' symbolicname='org.apache.openejb.openejb-http' uri='../org/apache/openejb/openejb-http/3.1.1/openejb-http-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    41760
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-http'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-http'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.httpd'/>
    <p n='uses' v='javax.servlet.http,org.apache.openejb.util,org.mortbay.jetty.nio,org.apache.openejb,javax.servlet,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.server.ejbd,org.mortbay.jetty.handler,org.mortbay.jetty'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.ejbd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.ejbd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-http/3.0.0.beta-2' presentationname='openejb-http' symbolicname='org.apache.openejb.openejb-http' uri='../org/apache/openejb/openejb-http/3.0-beta-2/openejb-http-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    39032
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-http'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-http'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.httpd'/>
    <p n='uses' v='javax.servlet.http,org.apache.openejb.util,org.mortbay.jetty.nio,org.apache.openejb,javax.servlet,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.server.ejbd,org.mortbay.jetty.handler,org.mortbay.jetty'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.ejbd)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.ejbd ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-http/3.0.1' presentationname='openejb-http' symbolicname='org.apache.openejb.openejb-http' uri='../org/apache/openejb/openejb-http/3.0.1/openejb-http-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    40769
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-http'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-http'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.httpd'/>
    <p n='uses' v='javax.servlet.http,org.apache.openejb.util,org.mortbay.jetty.nio,org.apache.openejb,javax.servlet,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.server.ejbd,org.mortbay.jetty.handler,org.mortbay.jetty'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.ejbd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.ejbd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-http/3.0.0' presentationname='openejb-http' symbolicname='org.apache.openejb.openejb-http' uri='../org/apache/openejb/openejb-http/3.0/openejb-http-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    40879
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-http'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-http'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.httpd'/>
    <p n='uses' v='javax.servlet.http,org.apache.openejb.util,org.mortbay.jetty.nio,org.apache.openejb,javax.servlet,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.server.ejbd,org.mortbay.jetty.handler,org.mortbay.jetty'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.ejbd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.ejbd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-http/3.1.0' presentationname='openejb-http' symbolicname='org.apache.openejb.openejb-http' uri='../org/apache/openejb/openejb-http/3.1/openejb-http-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    41607
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-http'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-http'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.httpd'/>
    <p n='uses' v='javax.servlet.http,org.apache.openejb.util,org.mortbay.jetty.nio,org.apache.openejb,javax.servlet,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.server.ejbd,org.mortbay.jetty.handler,org.mortbay.jetty'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.ejbd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.ejbd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.httpd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.httpd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
</resource>
<resource id='org.apache.openejb.xbean-reflect/3.4.0.r636442' presentationname='xbean-reflect' symbolicname='org.apache.openejb.xbean-reflect' uri='../org/apache/openejb/xbean-reflect/3.4-r636442/xbean-reflect-3.4-r636442.jar' version='3.4.0.r636442'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    538976
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-reflect'/>
    <p n='symbolicname' v='org.apache.openejb.xbean-reflect'/>
    <p n='version' t='version' v='3.4.0.r636442'/>
  </capability>
</resource>
<resource id='org.apache.openejb.xbean-reflect/3.6.0.r779512' presentationname='xbean-reflect' symbolicname='org.apache.openejb.xbean-reflect' uri='../org/apache/openejb/xbean-reflect/3.6-r779512/xbean-reflect-3.6-r779512.jar' version='3.6.0.r779512'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    150222
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-reflect'/>
    <p n='symbolicname' v='org.apache.openejb.xbean-reflect'/>
    <p n='version' t='version' v='3.6.0.r779512'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-spring/3.1.0' presentationname='openejb-spring' symbolicname='org.apache.openejb.openejb-spring' uri='../org/apache/openejb/openejb-spring/3.1/openejb-spring-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    49605
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-spring'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-spring'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.spring'/>
    <p n='uses' v='org.apache.openejb.config,org.apache.openejb.core.transaction,org.apache.openejb,javax.sql,org.apache.openejb.spi,javax.naming,org.springframework.core.io,org.apache.openejb.core,javax.transaction,org.springframework.beans.factory,org.apache.openejb.core.ivm.naming,org.springframework.transaction.support,org.apache.openejb.util,org.apache.openejb.config.sys,javax.transaction.xa,org.springframework.context,org.springframework.transaction,org.springframework.beans.factory.config,org.springframework.beans.factory.annotation,org.apache.openejb.assembler.dynamic,org.apache.openejb.loader,javax.annotation,org.apache.openejb.assembler.classic,org.springframework.beans'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.dynamic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.dynamic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config.sys)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config.sys ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.transaction)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.transaction ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spring)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spring ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.annotation
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.support ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-spring/3.1.1' presentationname='openejb-spring' symbolicname='org.apache.openejb.openejb-spring' uri='../org/apache/openejb/openejb-spring/3.1.1/openejb-spring-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    49768
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-spring'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-spring'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.spring'/>
    <p n='uses' v='org.apache.openejb.config,org.apache.openejb.core.transaction,org.apache.openejb,javax.sql,org.apache.openejb.spi,javax.naming,org.springframework.core.io,org.apache.openejb.core,javax.transaction,org.springframework.beans.factory,org.apache.openejb.core.ivm.naming,org.springframework.transaction.support,org.apache.openejb.util,org.apache.openejb.config.sys,javax.transaction.xa,org.springframework.context,org.springframework.transaction,org.springframework.beans.factory.config,org.springframework.beans.factory.annotation,org.apache.openejb.assembler.dynamic,org.apache.openejb.loader,javax.annotation,org.apache.openejb.assembler.classic,org.springframework.beans'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.dynamic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.dynamic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.config.sys)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.config.sys ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.transaction)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.transaction ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spring)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spring ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.annotation
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.support ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.openejb.xbean-finder-shaded/3.6.0.r779512' presentationname='xbean-finder-shaded' symbolicname='org.apache.openejb.xbean-finder-shaded' uri='../org/apache/openejb/xbean-finder-shaded/3.6-r779512/xbean-finder-shaded-3.6-r779512.jar' version='3.6.0.r779512'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    40330
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-finder-shaded'/>
    <p n='symbolicname' v='org.apache.openejb.xbean-finder-shaded'/>
    <p n='version' t='version' v='3.6.0.r779512'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-telnet/3.0.1' presentationname='openejb-telnet' symbolicname='org.apache.openejb.openejb-telnet' uri='../org/apache/openejb/openejb-telnet/3.0.1/openejb-telnet-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    31763
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-telnet'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-telnet'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.telnet'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb,javax.ejb,org.apache.openejb.spi,javax.naming,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.core.ivm.naming'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.telnet)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.telnet ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-telnet/3.0.0' presentationname='openejb-telnet' symbolicname='org.apache.openejb.openejb-telnet' uri='../org/apache/openejb/openejb-telnet/3.0/openejb-telnet-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    31871
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-telnet'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-telnet'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.telnet'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb,javax.ejb,org.apache.openejb.spi,javax.naming,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.core.ivm.naming'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.telnet)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.telnet ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-telnet/3.1.1' presentationname='openejb-telnet' symbolicname='org.apache.openejb.openejb-telnet' uri='../org/apache/openejb/openejb-telnet/3.1.1/openejb-telnet-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    31632
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-telnet'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-telnet'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.telnet'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb,javax.ejb,org.apache.openejb.spi,javax.naming,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.core.ivm.naming'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.telnet)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.telnet ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-telnet/3.0.0.beta-2' presentationname='openejb-telnet' symbolicname='org.apache.openejb.openejb-telnet' uri='../org/apache/openejb/openejb-telnet/3.0-beta-2/openejb-telnet-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    31981
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-telnet'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-telnet'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.telnet'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb,javax.ejb,org.apache.openejb.spi,javax.naming,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.core.ivm.naming'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.telnet)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.telnet ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0.beta-2
  </require>
</resource>
<resource id='org.apache.openejb.openejb-telnet/3.1.0' presentationname='openejb-telnet' symbolicname='org.apache.openejb.openejb-telnet' uri='../org/apache/openejb/openejb-telnet/3.1/openejb-telnet-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    31496
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-telnet'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-telnet'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.telnet'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb,javax.ejb,org.apache.openejb.spi,javax.naming,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.core.ivm.naming'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.telnet)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.telnet ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-itests-client/3.0.0' presentationname='openejb-itests-client' symbolicname='org.apache.openejb.openejb-itests-client' uri='../org/apache/openejb/openejb-itests-client/3.0/openejb-itests-client-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    441245
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-client'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-client'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateless'/>
    <p n='uses' v='org.apache.openejb.test,javax.ejb,org.apache.openejb.test.entity.bmp,javax.naming,org.apache.openejb.test.stateful,junit.framework,javax.rmi,javax.transaction,org.apache.openejb.test.object,org.apache.openejb.test.beans,org.apache.openejb.test.entity.cmp'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.bmp'/>
    <p n='uses' v='javax.ejb,javax.naming,org.apache.openejb.test,junit.framework,javax.rmi,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test'/>
    <p n='uses' v='org.apache.activemq,javax.naming,org.apache.openejb.test.entity.cmp2,org.apache.openejb.test.mdb,org.apache.openejb.test.beans,junit.textui,org.apache.xbean.finder,org.apache.openejb.test.entity.bmp,org.apache.openejb.test.stateless,javax.ejb,org.apache.openejb.test.stateful,org.apache.openejb.test.servlet,junit.framework,javax.rmi,javax.jms,org.apache.openejb.test.entity.cmp'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateful'/>
    <p n='uses' v='org.apache.openejb.test.stateless,javax.ejb,javax.naming,org.apache.openejb.test,junit.framework,javax.transaction,javax.rmi,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.mdb'/>
    <p n='uses' v='javax.naming,org.apache.openejb.test,junit.framework,org.apache.openejb.test.object,javax.jms'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp2'/>
    <p n='uses' v='org.apache.openejb.test.entity.ejbql,org.apache.openejb.test,javax.ejb,javax.naming,junit.framework,javax.rmi,org.apache.openejb.test.object,org.apache.openejb.test.entity.cmp'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.servlet'/>
    <p n='uses' v='javax.naming,org.apache.openejb.test,junit.framework'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr'/>
    <p n='uses' v='org.apache.openejb.test.entity.cmr.onetoone,org.apache.openejb.test,org.apache.openejb.test.entity.cmr.onetomany,javax.sql,javax.ejb,javax.naming,org.apache.openejb.test.entity.cmr.manytomany,junit.framework,javax.transaction,org.apache.openejb.test.entity.cmr.cmrmapping'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp'/>
    <p n='uses' v='javax.ejb,javax.naming,org.apache.openejb.test,org.apache.openejb.test.entity.cmp2,junit.framework,javax.rmi,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=junit.textui)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.textui
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.beans)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.beans ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.bmp)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.bmp ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp2)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp2 ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.cmrmapping)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.cmrmapping
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.manytomany)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.manytomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetomany)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetoone)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetoone
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.ejbql)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.ejbql ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.mdb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.mdb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.object)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.object ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.servlet)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.servlet ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.4.0.r636442))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.4.0.r636442
  </require>
</resource>
<resource id='org.apache.openejb.openejb-itests-client/3.0.0.beta-2' presentationname='openejb-itests-client' symbolicname='org.apache.openejb.openejb-itests-client' uri='../org/apache/openejb/openejb-itests-client/3.0-beta-2/openejb-itests-client-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    434956
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-client'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-client'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateless'/>
    <p n='uses' v='org.apache.openejb.test,javax.ejb,org.apache.openejb.test.entity.bmp,javax.naming,org.apache.openejb.test.stateful,junit.framework,javax.rmi,javax.transaction,org.apache.openejb.test.object,org.apache.openejb.test.beans,org.apache.openejb.test.entity.cmp'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.bmp'/>
    <p n='uses' v='javax.ejb,javax.naming,org.apache.openejb.test,junit.framework,javax.rmi,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test'/>
    <p n='uses' v='junit.textui,org.apache.activemq,org.apache.xbean.finder,javax.ejb,org.apache.openejb.test.stateless,org.apache.openejb.test.entity.bmp,javax.naming,org.apache.openejb.test.stateful,org.apache.openejb.test.mdb,junit.framework,javax.rmi,javax.jms,org.apache.openejb.test.beans,org.apache.openejb.test.entity.cmp'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateful'/>
    <p n='uses' v='org.apache.openejb.test.stateless,javax.ejb,javax.naming,org.apache.openejb.test,junit.framework,javax.transaction,javax.rmi,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.mdb'/>
    <p n='uses' v='javax.naming,org.apache.openejb.test,junit.framework,org.apache.openejb.test.object,javax.jms'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp2'/>
    <p n='uses' v='org.apache.openejb.test.entity.ejbql,org.apache.openejb.test,org.apache.openejb.test.entity.cmr,javax.ejb,javax.naming,junit.framework,javax.rmi,org.apache.openejb.test.object,org.apache.openejb.test.entity.cmp'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr'/>
    <p n='uses' v='org.apache.openejb.test.entity.cmr.onetoone,org.apache.openejb.test,org.apache.openejb.test.entity.cmr.onetomany,javax.sql,javax.ejb,javax.naming,org.apache.openejb.test.entity.cmr.manytomany,junit.framework,javax.transaction,org.apache.openejb.test.entity.cmr.cmrmapping'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp'/>
    <p n='uses' v='javax.ejb,javax.naming,org.apache.openejb.test,org.apache.openejb.test.entity.cmp2,junit.framework,javax.rmi,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=junit.textui)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.textui
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.beans)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.beans ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.bmp)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.bmp ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp2)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp2 ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.cmrmapping)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.cmrmapping
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.manytomany)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.manytomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetomany)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetoone)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetoone
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.ejbql)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.ejbql ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.mdb)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.mdb ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.object)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.object ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.3.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-itests-client/3.1.1' presentationname='openejb-itests-client' symbolicname='org.apache.openejb.openejb-itests-client' uri='../org/apache/openejb/openejb-itests-client/3.1.1/openejb-itests-client-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    530182
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-client'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-client'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.singleton'/>
    <p n='uses' v='org.apache.openejb.test,javax.ejb,org.apache.openejb.test.entity.bmp,javax.naming,org.apache.openejb.test.stateful,junit.framework,javax.rmi,javax.transaction,org.apache.openejb.test.object,org.apache.openejb.test.beans,org.apache.openejb.test.entity.cmp'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateless'/>
    <p n='uses' v='org.apache.openejb.test,javax.ejb,org.apache.openejb.test.entity.bmp,javax.naming,org.apache.openejb.test.stateful,junit.framework,javax.rmi,javax.transaction,org.apache.openejb.test.object,org.apache.openejb.test.beans,org.apache.openejb.test.entity.cmp'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.bmp'/>
    <p n='uses' v='javax.ejb,javax.naming,org.apache.openejb.test,junit.framework,javax.rmi,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test'/>
    <p n='uses' v='org.apache.activemq,org.apache.openejb.test.singleton,javax.naming,org.apache.openejb.test.mdb,org.apache.openejb.test.entity.cmp2,org.apache.openejb.test.beans,junit.textui,org.apache.xbean.finder,org.apache.openejb.test.stateless,org.apache.openejb.test.entity.bmp,javax.ejb,org.apache.openejb.test.stateful,junit.framework,org.apache.openejb.test.servlet,javax.rmi,javax.jms,org.apache.openejb.test.entity.cmp'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateful'/>
    <p n='uses' v='org.apache.openejb.test.stateless,javax.ejb,javax.naming,org.apache.openejb.test,junit.framework,javax.transaction,javax.rmi,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.mdb'/>
    <p n='uses' v='javax.naming,org.apache.openejb.test,junit.framework,org.apache.openejb.test.object,javax.jms'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp2'/>
    <p n='uses' v='org.apache.openejb.test.entity.ejbql,org.apache.openejb.test,javax.ejb,javax.naming,junit.framework,javax.rmi,org.apache.openejb.test.object,org.apache.openejb.test.entity.cmp'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.servlet'/>
    <p n='uses' v='javax.naming,org.apache.openejb.test,junit.framework'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr'/>
    <p n='uses' v='org.apache.openejb.test.entity.cmr.onetoone,org.apache.openejb.test,org.apache.openejb.test.entity.cmr.onetomany,javax.sql,javax.ejb,javax.naming,org.apache.openejb.test.entity.cmr.manytomany,junit.framework,javax.transaction,org.apache.openejb.test.entity.cmr.cmrmapping'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp'/>
    <p n='uses' v='javax.ejb,javax.naming,org.apache.openejb.test,org.apache.openejb.test.entity.cmp2,junit.framework,javax.rmi,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=junit.textui)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.textui
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.beans)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.beans ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.bmp)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.bmp ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp2)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp2 ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.cmrmapping)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.cmrmapping
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.manytomany)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.manytomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetomany)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetoone)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetoone
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.ejbql)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.ejbql ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.mdb)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.mdb ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.object)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.object ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.servlet)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.servlet ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.singleton)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.singleton ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder
  </require>
</resource>
<resource id='org.apache.openejb.openejb-itests-client/3.1.0' presentationname='openejb-itests-client' symbolicname='org.apache.openejb.openejb-itests-client' uri='../org/apache/openejb/openejb-itests-client/3.1/openejb-itests-client-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    529430
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-client'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-client'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.singleton'/>
    <p n='uses' v='org.apache.openejb.test,javax.ejb,org.apache.openejb.test.entity.bmp,javax.naming,org.apache.openejb.test.stateful,junit.framework,javax.rmi,javax.transaction,org.apache.openejb.test.object,org.apache.openejb.test.beans,org.apache.openejb.test.entity.cmp'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateless'/>
    <p n='uses' v='org.apache.openejb.test,javax.ejb,org.apache.openejb.test.entity.bmp,javax.naming,org.apache.openejb.test.stateful,junit.framework,javax.rmi,javax.transaction,org.apache.openejb.test.object,org.apache.openejb.test.beans,org.apache.openejb.test.entity.cmp'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.bmp'/>
    <p n='uses' v='javax.ejb,javax.naming,org.apache.openejb.test,junit.framework,javax.rmi,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test'/>
    <p n='uses' v='org.apache.activemq,org.apache.openejb.test.singleton,javax.naming,org.apache.openejb.test.mdb,org.apache.openejb.test.entity.cmp2,org.apache.openejb.test.beans,junit.textui,org.apache.openejb.test.stateless,org.apache.openejb.test.entity.bmp,javax.ejb,org.apache.openejb.finder,org.apache.openejb.test.stateful,junit.framework,org.apache.openejb.test.servlet,javax.rmi,javax.jms,org.apache.openejb.test.entity.cmp'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateful'/>
    <p n='uses' v='org.apache.openejb.test.stateless,javax.ejb,javax.naming,org.apache.openejb.test,junit.framework,javax.transaction,javax.rmi,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.mdb'/>
    <p n='uses' v='javax.naming,org.apache.openejb.test,junit.framework,org.apache.openejb.test.object,javax.jms'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp2'/>
    <p n='uses' v='org.apache.openejb.test.entity.ejbql,org.apache.openejb.test,javax.ejb,javax.naming,junit.framework,javax.rmi,org.apache.openejb.test.object,org.apache.openejb.test.entity.cmp'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.servlet'/>
    <p n='uses' v='javax.naming,org.apache.openejb.test,junit.framework'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr'/>
    <p n='uses' v='org.apache.openejb.test.entity.cmr.onetoone,org.apache.openejb.test,org.apache.openejb.test.entity.cmr.onetomany,javax.sql,javax.ejb,javax.naming,org.apache.openejb.test.entity.cmr.manytomany,junit.framework,javax.transaction,org.apache.openejb.test.entity.cmr.cmrmapping'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp'/>
    <p n='uses' v='javax.ejb,javax.naming,org.apache.openejb.test,org.apache.openejb.test.entity.cmp2,junit.framework,javax.rmi,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=junit.textui)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.textui
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.finder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.finder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.beans)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.beans ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.bmp)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.bmp ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp2)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp2 ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.cmrmapping)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.cmrmapping
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.manytomany)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.manytomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetomany)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetoone)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetoone
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.ejbql)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.ejbql ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.mdb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.mdb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.object)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.object ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.servlet)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.servlet ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.singleton)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.singleton ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless ;version=3.1.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-itests-client/3.0.1' presentationname='openejb-itests-client' symbolicname='org.apache.openejb.openejb-itests-client' uri='../org/apache/openejb/openejb-itests-client/3.0.1/openejb-itests-client-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    441189
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-itests-client'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-itests-client'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateless'/>
    <p n='uses' v='org.apache.openejb.test,javax.ejb,org.apache.openejb.test.entity.bmp,javax.naming,org.apache.openejb.test.stateful,junit.framework,javax.rmi,javax.transaction,org.apache.openejb.test.object,org.apache.openejb.test.beans,org.apache.openejb.test.entity.cmp'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.bmp'/>
    <p n='uses' v='javax.ejb,javax.naming,org.apache.openejb.test,junit.framework,javax.rmi,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test'/>
    <p n='uses' v='org.apache.activemq,javax.naming,org.apache.openejb.test.entity.cmp2,org.apache.openejb.test.mdb,org.apache.openejb.test.beans,junit.textui,org.apache.xbean.finder,org.apache.openejb.test.entity.bmp,org.apache.openejb.test.stateless,javax.ejb,org.apache.openejb.test.stateful,org.apache.openejb.test.servlet,junit.framework,javax.rmi,javax.jms,org.apache.openejb.test.entity.cmp'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.stateful'/>
    <p n='uses' v='org.apache.openejb.test.stateless,javax.ejb,javax.naming,org.apache.openejb.test,junit.framework,javax.transaction,javax.rmi,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.mdb'/>
    <p n='uses' v='javax.naming,org.apache.openejb.test,junit.framework,org.apache.openejb.test.object,javax.jms'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp2'/>
    <p n='uses' v='org.apache.openejb.test.entity.ejbql,org.apache.openejb.test,javax.ejb,javax.naming,junit.framework,javax.rmi,org.apache.openejb.test.object,org.apache.openejb.test.entity.cmp'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.servlet'/>
    <p n='uses' v='javax.naming,org.apache.openejb.test,junit.framework'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmr'/>
    <p n='uses' v='org.apache.openejb.test.entity.cmr.onetoone,org.apache.openejb.test,org.apache.openejb.test.entity.cmr.onetomany,javax.sql,javax.ejb,javax.naming,org.apache.openejb.test.entity.cmr.manytomany,junit.framework,javax.transaction,org.apache.openejb.test.entity.cmr.cmrmapping'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.test.entity.cmp'/>
    <p n='uses' v='javax.ejb,javax.naming,org.apache.openejb.test,org.apache.openejb.test.entity.cmp2,junit.framework,javax.rmi,org.apache.openejb.test.object'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=junit.textui)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.textui
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.beans)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.beans ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.bmp)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.bmp ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmp2)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmp2 ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.cmrmapping)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.cmrmapping
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.manytomany)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.manytomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetomany)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetomany
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.cmr.onetoone)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.cmr.onetoone
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.entity.ejbql)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.entity.ejbql ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.mdb)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.mdb ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.object)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.object ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.servlet)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.servlet ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateful)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateful ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.test.stateless)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.test.stateless ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.5.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-loader/3.0.1' presentationname='openejb-tomcat-loader' symbolicname='org.apache.openejb.openejb-tomcat-loader' uri='../org/apache/openejb/openejb-tomcat-loader/3.0.1/openejb-tomcat-loader-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16792
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-loader'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-loader'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.loader'/>
    <p n='uses' v='org.apache.catalina.core,org.apache.catalina,javax.servlet.http,javax.servlet,org.apache.openejb.loader'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.loader)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.loader ;version=3.0.1
  </require>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-loader/3.1.0' presentationname='openejb-tomcat-loader' symbolicname='org.apache.openejb.openejb-tomcat-loader' uri='../org/apache/openejb/openejb-tomcat-loader/3.1/openejb-tomcat-loader-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16737
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-loader'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-loader'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.loader'/>
    <p n='uses' v='org.apache.catalina.core,org.apache.catalina,javax.servlet.http,javax.servlet,org.apache.openejb.loader'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.loader ;version=3.1.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-loader/3.1.1' presentationname='openejb-tomcat-loader' symbolicname='org.apache.openejb.openejb-tomcat-loader' uri='../org/apache/openejb/openejb-tomcat-loader/3.1.1/openejb-tomcat-loader-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17104
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-loader'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-loader'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.loader'/>
    <p n='uses' v='org.apache.catalina.core,org.apache.catalina,javax.servlet.http,javax.servlet,org.apache.openejb.loader'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.loader)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.loader ;version=3.1.1
  </require>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-loader/3.0.0' presentationname='openejb-tomcat-loader' symbolicname='org.apache.openejb.openejb-tomcat-loader' uri='../org/apache/openejb/openejb-tomcat-loader/3.0/openejb-tomcat-loader-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16790
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-loader'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-loader'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.loader'/>
    <p n='uses' v='org.apache.catalina.core,org.apache.catalina,javax.servlet.http,javax.servlet,org.apache.openejb.loader'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.loader ;version=3.0.0
  </require>
</resource>
<resource id='org.apache.openejb.xbean-finder/3.4.0.r636442' presentationname='xbean-finder' symbolicname='org.apache.openejb.xbean-finder' uri='../org/apache/openejb/xbean-finder/3.4-r636442/xbean-finder-3.4-r636442.jar' version='3.4.0.r636442'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    36952
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='xbean-finder'/>
    <p n='symbolicname' v='org.apache.openejb.xbean-finder'/>
    <p n='version' t='version' v='3.4.0.r636442'/>
  </capability>
</resource>
<resource id='org.apache.openejb.openejb-webadmin/3.0.1' presentationname='openejb-webadmin' symbolicname='org.apache.openejb.openejb-webadmin' uri='../org/apache/openejb/openejb-webadmin/3.0.1/openejb-webadmin-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    132187
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-webadmin'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-webadmin'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin.main'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.regexp,org.apache.openejb,javax.ejb,org.apache.openejb.spi,org.apache.openejb.webadmin,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.openejb.core'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.loader'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin.httpd'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.commons.fileupload,javax.ejb,org.apache.openejb.webadmin,javax.naming,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.util.proxy,org.apache.openejb.core.stateful'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin.clienttools'/>
    <p n='uses' v='org.apache.openejb,javax.ejb,org.apache.openejb.spi,org.apache.openejb.webadmin,javax.naming,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.openejb.core.ivm,org.apache.openejb.core,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.fileupload)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.fileupload
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.stateful)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.stateful ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.proxy)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.proxy ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin.clienttools)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin.clienttools ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin.httpd)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin.httpd ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin.main)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin.main ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.regexp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.regexp
  </require>
</resource>
<resource id='org.apache.openejb.openejb-webadmin/3.1.1' presentationname='openejb-webadmin' symbolicname='org.apache.openejb.openejb-webadmin' uri='../org/apache/openejb/openejb-webadmin/3.1.1/openejb-webadmin-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    132092
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-webadmin'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-webadmin'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin.main'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.regexp,org.apache.openejb,javax.ejb,org.apache.openejb.spi,org.apache.openejb.webadmin,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.openejb.core'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.loader'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin.httpd'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.commons.fileupload,javax.ejb,org.apache.openejb.webadmin,javax.naming,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.util.proxy,org.apache.openejb.core.stateful'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin.clienttools'/>
    <p n='uses' v='org.apache.openejb,javax.ejb,org.apache.openejb.spi,org.apache.openejb.webadmin,javax.naming,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.openejb.core.ivm,org.apache.openejb.core,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.fileupload)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.fileupload
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.stateful)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.stateful ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.proxy)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.proxy ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin.clienttools)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin.clienttools ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin.httpd)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin.httpd ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin.main)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin.main ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.regexp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.regexp
  </require>
</resource>
<resource id='org.apache.openejb.openejb-webadmin/3.0.0.beta-2' presentationname='openejb-webadmin' symbolicname='org.apache.openejb.openejb-webadmin' uri='../org/apache/openejb/openejb-webadmin/3.0-beta-2/openejb-webadmin-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    132419
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-webadmin'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-webadmin'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin.main'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.regexp,org.apache.openejb,javax.ejb,org.apache.openejb.spi,org.apache.openejb.webadmin,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.openejb.core'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.loader'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin.httpd'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.commons.fileupload,javax.ejb,org.apache.openejb.webadmin,javax.naming,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.util.proxy,org.apache.openejb.core.stateful'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin.clienttools'/>
    <p n='uses' v='org.apache.openejb,javax.ejb,org.apache.openejb.spi,org.apache.openejb.webadmin,javax.naming,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.openejb.core.ivm,org.apache.openejb.core,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.fileupload)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.fileupload
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.stateful)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.stateful ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.proxy)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.proxy ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin.clienttools)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin.clienttools ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin.httpd)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin.httpd ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin.main)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin.main ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.regexp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.regexp
  </require>
</resource>
<resource id='org.apache.openejb.openejb-webadmin/3.1.0' presentationname='openejb-webadmin' symbolicname='org.apache.openejb.openejb-webadmin' uri='../org/apache/openejb/openejb-webadmin/3.1/openejb-webadmin-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    131952
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-webadmin'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-webadmin'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin.main'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.regexp,org.apache.openejb,javax.ejb,org.apache.openejb.spi,org.apache.openejb.webadmin,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.openejb.core'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.loader'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin.httpd'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.commons.fileupload,javax.ejb,org.apache.openejb.webadmin,javax.naming,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.util.proxy,org.apache.openejb.core.stateful'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin.clienttools'/>
    <p n='uses' v='org.apache.openejb,javax.ejb,org.apache.openejb.spi,org.apache.openejb.webadmin,javax.naming,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.openejb.core.ivm,org.apache.openejb.core,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.fileupload)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.fileupload
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.stateful)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.stateful ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.proxy)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.proxy ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin.clienttools)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin.clienttools ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin.httpd)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin.httpd ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin.main)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin.main ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.regexp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.regexp
  </require>
</resource>
<resource id='org.apache.openejb.openejb-webadmin/3.0.0' presentationname='openejb-webadmin' symbolicname='org.apache.openejb.openejb-webadmin' uri='../org/apache/openejb/openejb-webadmin/3.0/openejb-webadmin-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    132288
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-webadmin'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-webadmin'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin.main'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.regexp,org.apache.openejb,javax.ejb,org.apache.openejb.spi,org.apache.openejb.webadmin,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.openejb.core'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.loader'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin.httpd'/>
    <p n='uses' v='org.apache.openejb.util,org.apache.commons.fileupload,javax.ejb,org.apache.openejb.webadmin,javax.naming,org.apache.openejb.server,org.apache.openejb.loader,org.apache.openejb.core.ivm,org.apache.openejb.util.proxy,org.apache.openejb.core.stateful'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.webadmin.clienttools'/>
    <p n='uses' v='org.apache.openejb,javax.ejb,org.apache.openejb.spi,org.apache.openejb.webadmin,javax.naming,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.openejb.core.ivm,org.apache.openejb.core,org.apache.openejb.util.proxy'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.fileupload)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.fileupload
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.stateful)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.stateful ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util.proxy)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util.proxy ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin.clienttools)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin.clienttools ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin.httpd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin.httpd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.webadmin.main)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.webadmin.main ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.regexp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.regexp
  </require>
</resource>
<resource id='org.apache.openejb.openejb-server/3.1.0' presentationname='openejb-server' symbolicname='org.apache.openejb.openejb-server' uri='../org/apache/openejb/openejb-server/3.1/openejb-server-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    74815
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-server'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-server'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.admin'/>
    <p n='uses' v='org.apache.openejb.server'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.auth'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server'/>
    <p n='uses' v='org.codehaus.swizzle.stream,org.apache.openejb.server.admin,javax.resource.spi,org.apache.openejb.cli,org.apache.openejb,org.apache.openejb.spi,javax.naming,org.apache.openejb.core,org.apache.openejb.util,org.apache.xbean.recipe,org.apache.openejb.finder,org.apache.log4j,org.apache.openejb.server.auth,org.apache.openejb.loader,javax.net,org.apache.openejb.assembler.classic,org.apache.commons.cli,javax.net.ssl'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.cli)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.cli
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.cli)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.cli ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.finder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.finder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.admin)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.admin ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.auth)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.auth ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.recipe)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.recipe ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.swizzle.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.swizzle.stream
  </require>
</resource>
<resource id='org.apache.openejb.openejb-server/3.0.1' presentationname='openejb-server' symbolicname='org.apache.openejb.openejb-server' uri='../org/apache/openejb/openejb-server/3.0.1/openejb-server-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    66865
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-server'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-server'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.admin'/>
    <p n='uses' v='org.apache.openejb.server'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.auth'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server'/>
    <p n='uses' v='org.apache.openejb.server.admin,org.apache.openejb.util,javax.resource.spi,org.apache.xbean.recipe,org.apache.xbean.finder,org.apache.openejb.cli,org.apache.openejb,org.apache.log4j,org.apache.openejb.spi,javax.naming,org.apache.openejb.server.auth,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.openejb.core,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.cli)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.cli
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.cli)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.cli ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.admin)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.admin ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.auth)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.auth ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.recipe)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.recipe ;version=3.5.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-server/3.1.1' presentationname='openejb-server' symbolicname='org.apache.openejb.openejb-server' uri='../org/apache/openejb/openejb-server/3.1.1/openejb-server-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    74989
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-server'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-server'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.admin'/>
    <p n='uses' v='org.apache.openejb.server'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.auth'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server'/>
    <p n='uses' v='org.codehaus.swizzle.stream,org.apache.openejb.server.admin,javax.resource.spi,org.apache.openejb.cli,org.apache.openejb,org.apache.openejb.spi,javax.naming,org.apache.openejb.core,org.apache.openejb.util,org.apache.xbean.recipe,org.apache.xbean.finder,org.apache.log4j,org.apache.openejb.server.auth,org.apache.openejb.loader,javax.net,org.apache.openejb.assembler.classic,org.apache.commons.cli,javax.net.ssl'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.cli)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.cli
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.cli)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.cli ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.admin)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.admin ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.auth)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.auth ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.recipe)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.recipe
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.swizzle.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.swizzle.stream
  </require>
</resource>
<resource id='org.apache.openejb.openejb-server/3.0.0.beta-2' presentationname='openejb-server' symbolicname='org.apache.openejb.openejb-server' uri='../org/apache/openejb/openejb-server/3.0-beta-2/openejb-server-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    53310
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-server'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-server'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.admin'/>
    <p n='uses' v='org.apache.openejb.server'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server'/>
    <p n='uses' v='org.apache.openejb.server.admin,org.apache.openejb.util,javax.resource.spi,org.apache.xbean.finder,org.apache.openejb.cli,org.apache.openejb,org.apache.log4j,org.apache.openejb.spi,javax.naming,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.openejb.core,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.cli)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.cli
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.cli)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.cli ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.admin)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.admin ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.3.0
  </require>
</resource>
<resource id='org.apache.openejb.openejb-server/3.0.0' presentationname='openejb-server' symbolicname='org.apache.openejb.openejb-server' uri='../org/apache/openejb/openejb-server/3.0/openejb-server-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    66969
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-server'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-server'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.admin'/>
    <p n='uses' v='org.apache.openejb.server'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server.auth'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.server'/>
    <p n='uses' v='org.apache.openejb.server.admin,org.apache.openejb.util,javax.resource.spi,org.apache.xbean.recipe,org.apache.xbean.finder,org.apache.openejb.cli,org.apache.openejb,org.apache.log4j,org.apache.openejb.spi,javax.naming,org.apache.openejb.server.auth,org.apache.openejb.loader,org.apache.openejb.assembler.classic,org.apache.openejb.core,org.apache.commons.cli'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.cli)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.cli
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.cli)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.cli ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.admin)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.admin ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.auth)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.auth ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.util)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.util ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.finder)(version&gt;=3.4.0.r636442))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.finder ;version=3.4.0.r636442
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.recipe)(version&gt;=3.4.0.r636442))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.recipe ;version=3.4.0.r636442
  </require>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-common/3.1.1' presentationname='openejb-tomcat-common' symbolicname='org.apache.openejb.openejb-tomcat-common' uri='../org/apache/openejb/openejb-tomcat-common/3.1.1/openejb-tomcat-common-3.1.1.jar' version='3.1.1'>
  <description>
    This module contains the classes that will be added to the
    
    
    
    
    
    
    
    
    
    
    
     common
     class
    
     loader
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    43213
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-common'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-common'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.common'/>
    <p n='uses' v='javax.xml.namespace,javax.naming.spi,org.apache.naming,org.apache.openejb,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.loader,javax.annotation,javax.persistence,org.apache.openejb.assembler.classic,org.apache.openejb.core,org.apache.openejb.core.ivm,javax.transaction,javax.xml.ws,org.apache.openejb.core.ivm.naming'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.installer'/>
    <p n='uses' v='org.codehaus.swizzle.stream,javax.servlet.http,javax.servlet,org.apache.openejb.loader,org.apache.openejb.tomcat.common'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.assembler.classic)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.assembler.classic ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.common)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.common ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.installer)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.installer ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.swizzle.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.swizzle.stream
  </require>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-common/3.0.1' presentationname='openejb-tomcat-common' symbolicname='org.apache.openejb.openejb-tomcat-common' uri='../org/apache/openejb/openejb-tomcat-common/3.0.1/openejb-tomcat-common-3.0.1.jar' version='3.0.1'>
  <description>
    This module contains the classes that will be added to the
    
    
    
    
    
    
    
    
    
    
    
     common
     class
    
     loader
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    43772
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-common'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-common'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.common'/>
    <p n='uses' v='javax.servlet.http,javax.xml.namespace,org.apache.naming,javax.naming.spi,org.apache.openejb.spi,javax.naming,javax.servlet,org.apache.openejb.server,org.apache.openejb.server.ejbd,javax.persistence,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.xml.ws,javax.transaction,org.apache.openejb.core.ivm.naming,javax.ejb,org.apache.openejb.loader,javax.annotation'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.installer'/>
    <p n='uses' v='org.codehaus.swizzle.stream,javax.servlet.http,javax.servlet,org.apache.openejb.loader,org.apache.openejb.tomcat.common'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.ejbd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.ejbd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.common)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.common ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.installer)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.installer ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.swizzle.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.swizzle.stream
  </require>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-common/3.0.0' presentationname='openejb-tomcat-common' symbolicname='org.apache.openejb.openejb-tomcat-common' uri='../org/apache/openejb/openejb-tomcat-common/3.0/openejb-tomcat-common-3.0.jar' version='3.0.0'>
  <description>
    This module contains the classes that will be added to the
    
    
    
    
    
    
    
    
    
    
    
     common
     class
    
     loader
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    43778
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-common'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-common'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.common'/>
    <p n='uses' v='javax.servlet.http,javax.xml.namespace,org.apache.naming,javax.naming.spi,org.apache.openejb.spi,javax.naming,javax.servlet,org.apache.openejb.server,org.apache.openejb.server.ejbd,javax.persistence,org.apache.openejb.core.ivm,org.apache.openejb.core,javax.xml.ws,javax.transaction,org.apache.openejb.core.ivm.naming,javax.ejb,org.apache.openejb.loader,javax.annotation'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.installer'/>
    <p n='uses' v='org.codehaus.swizzle.stream,javax.servlet.http,javax.servlet,org.apache.openejb.loader,org.apache.openejb.tomcat.common'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.server.ejbd)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.server.ejbd ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.common)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.common ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.installer)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.installer ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.swizzle.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.swizzle.stream
  </require>
</resource>
<resource id='org.apache.openejb.openejb-tomcat-common/3.1.0' presentationname='openejb-tomcat-common' symbolicname='org.apache.openejb.openejb-tomcat-common' uri='../org/apache/openejb/openejb-tomcat-common/3.1/openejb-tomcat-common-3.1.jar' version='3.1.0'>
  <description>
    This module contains the classes that will be added to the
    
    
    
    
    
    
    
    
    
    
    
     common
     class
    
     loader
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    42647
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-tomcat-common'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-tomcat-common'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.common'/>
    <p n='uses' v='javax.xml.namespace,javax.naming.spi,org.apache.naming,org.apache.openejb.spi,javax.ejb,javax.naming,org.apache.openejb.loader,javax.annotation,javax.persistence,org.apache.openejb.core,org.apache.openejb.core.ivm,javax.transaction,javax.xml.ws,org.apache.openejb.core.ivm.naming'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.tomcat.installer'/>
    <p n='uses' v='org.codehaus.swizzle.stream,javax.servlet.http,javax.servlet,org.apache.openejb.loader,org.apache.openejb.tomcat.common'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.core.ivm.naming)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.core.ivm.naming ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.loader)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.loader ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.spi)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.spi ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.common)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.common ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.tomcat.installer)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.tomcat.installer ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.swizzle.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.swizzle.stream
  </require>
</resource>
<resource id='org.apache.openejb.openejb-jee/3.0.0.beta-2' presentationname='openejb-jee' symbolicname='org.apache.openejb.openejb-jee' uri='../org/apache/openejb/openejb-jee/3.0-beta-2/openejb-jee-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    724554
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-jee'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-jee'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jpa'/>
    <p n='uses' v='org.xml.sax,javax.xml.parsers,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jba'/>
    <p n='uses' v='javax.xml.bind.annotation.adapters,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.sun'/>
    <p n='uses' v='org.xml.sax,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,org.apache.openejb.jee,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.oejb2'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,javax.xml.parsers,org.xml.sax.helpers,javax.xml.bind,org.apache.openejb.jee.jpa.unit'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jba.cmp'/>
    <p n='uses' v='javax.xml.bind.annotation.adapters,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.oejb3'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jpa.unit'/>
    <p n='uses' v='org.xml.sax,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.wls'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jba)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jba ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jba.cmp)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jba.cmp ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa.unit)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa.unit ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb2)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb2 ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb3)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb3 ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.sun)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.sun ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.wls)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.wls ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.openejb.openejb-jee/3.1.0' presentationname='openejb-jee' symbolicname='org.apache.openejb.openejb-jee' uri='../org/apache/openejb/openejb-jee/3.1/openejb-jee-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    783594
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-jee'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-jee'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jpa'/>
    <p n='uses' v='org.xml.sax,javax.xml.parsers,javax.xml.bind.annotation.adapters,org.apache.openejb.jee,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jba'/>
    <p n='uses' v='javax.xml.bind.annotation.adapters,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.sun'/>
    <p n='uses' v='org.xml.sax,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,org.apache.openejb.jee,javax.xml.bind'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,javax.xml.bind'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.oejb2'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,org.apache.openejb.jee,javax.xml.bind,org.apache.openejb.jee.jpa.unit'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jba.cmp'/>
    <p n='uses' v='javax.xml.bind.annotation.adapters,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.oejb3'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,org.apache.openejb.jee,javax.xml.bind'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jpa.unit'/>
    <p n='uses' v='org.xml.sax,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,org.apache.openejb.jee,javax.xml.bind'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.wls'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,org.apache.openejb.jee,javax.xml.bind'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jba)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jba ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jba.cmp)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jba.cmp ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa.unit)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa.unit ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb2)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb2 ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb3)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb3 ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.sun)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.sun ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.wls)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.wls ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.openejb.openejb-jee/3.1.1' presentationname='openejb-jee' symbolicname='org.apache.openejb.openejb-jee' uri='../org/apache/openejb/openejb-jee/3.1.1/openejb-jee-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    788210
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-jee'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-jee'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jpa'/>
    <p n='uses' v='org.xml.sax,javax.xml.parsers,javax.xml.bind.annotation.adapters,org.apache.openejb.jee,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jba'/>
    <p n='uses' v='javax.xml.bind.annotation.adapters,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.sun'/>
    <p n='uses' v='org.xml.sax,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,org.apache.openejb.jee,javax.xml.bind'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,javax.xml.bind'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.oejb2'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.openejb.jee.oejb3,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,org.apache.openejb.jee,javax.xml.bind,org.apache.openejb.jee.jpa.unit'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jba.cmp'/>
    <p n='uses' v='javax.xml.bind.annotation.adapters,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.oejb3'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,org.apache.openejb.jee,javax.xml.bind'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jpa.unit'/>
    <p n='uses' v='org.xml.sax,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,org.apache.openejb.jee,javax.xml.bind'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.wls'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,org.apache.openejb.jee,javax.xml.bind'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jba)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jba ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jba.cmp)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jba.cmp ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa.unit)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa.unit ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb2)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb2 ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb3)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb3 ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.sun)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.sun ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.wls)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.wls ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.openejb.openejb-jee/3.0.1' presentationname='openejb-jee' symbolicname='org.apache.openejb.openejb-jee' uri='../org/apache/openejb/openejb-jee/3.0.1/openejb-jee-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    726916
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-jee'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-jee'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jpa'/>
    <p n='uses' v='org.xml.sax,javax.xml.parsers,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jba'/>
    <p n='uses' v='javax.xml.bind.annotation.adapters,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.sun'/>
    <p n='uses' v='org.xml.sax,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,org.apache.openejb.jee,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.oejb2'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,javax.xml.parsers,org.xml.sax.helpers,javax.xml.bind,org.apache.openejb.jee.jpa.unit'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jba.cmp'/>
    <p n='uses' v='javax.xml.bind.annotation.adapters,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.oejb3'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jpa.unit'/>
    <p n='uses' v='org.xml.sax,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.wls'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jba)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jba ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jba.cmp)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jba.cmp ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa.unit)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa.unit ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb2)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb2 ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb3)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb3 ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.sun)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.sun ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.wls)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.wls ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.openejb.openejb-jee/3.0.0' presentationname='openejb-jee' symbolicname='org.apache.openejb.openejb-jee' uri='../org/apache/openejb/openejb-jee/3.0/openejb-jee-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    726915
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-jee'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-jee'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jpa'/>
    <p n='uses' v='org.xml.sax,javax.xml.parsers,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jba'/>
    <p n='uses' v='javax.xml.bind.annotation.adapters,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.sun'/>
    <p n='uses' v='org.xml.sax,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,org.apache.openejb.jee,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.oejb2'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,javax.xml.parsers,org.xml.sax.helpers,javax.xml.bind,org.apache.openejb.jee.jpa.unit'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jba.cmp'/>
    <p n='uses' v='javax.xml.bind.annotation.adapters,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.oejb3'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.jpa.unit'/>
    <p n='uses' v='org.xml.sax,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.jee.wls'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.parsers,javax.xml.bind'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jba)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jba ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jba.cmp)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jba.cmp ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.jpa.unit)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.jpa.unit ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb2)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb2 ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.oejb3)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.oejb3 ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.sun)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.sun ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.jee.wls)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.jee.wls ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.openejb.openejb-client/3.1.1' presentationname='openejb-client' symbolicname='org.apache.openejb.openejb-client' uri='../org/apache/openejb/openejb-client/3.1.1/openejb-client-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    200563
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-client'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-client'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.client.java'/>
    <p n='uses' v='javax.naming,javax.naming.spi,org.apache.openejb.client'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.client.proxy'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.client'/>
    <p n='uses' v='javax.xml.ws.handler,javax.security.auth.login,javax.xml.namespace,javax.naming.spi,javax.xml.transform,javax.sql,javax.naming,javax.security.auth.spi,javax.xml.ws.spi,javax.xml.ws.wsaddressing,javax.rmi.CORBA,javax.xml.ws,javax.transaction,javax.security.auth.callback,javax.xml.ws.soap,org.apache.openejb.client.proxy,org.omg.CORBA,javax.ejb,javax.jws,javax.net,javax.mail,javax.xml.bind,javax.rmi,javax.security.auth,javax.net.ssl'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.openejb.openejb-core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.openejb.openejb-core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client.java)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client.java ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client.proxy)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client.proxy ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
</resource>
<resource id='org.apache.openejb.openejb-client/3.0.1' presentationname='openejb-client' symbolicname='org.apache.openejb.openejb-client' uri='../org/apache/openejb/openejb-client/3.0.1/openejb-client-3.0.1.jar' version='3.0.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    166080
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-client'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-client'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.client.java'/>
    <p n='uses' v='javax.naming,javax.naming.spi,org.apache.openejb.client'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.client.proxy'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.client'/>
    <p n='uses' v='javax.xml.ws.handler,javax.security.auth.login,javax.xml.namespace,javax.naming.spi,javax.xml.transform,javax.sql,javax.naming,javax.security.auth.spi,javax.xml.ws.spi,javax.xml.ws.wsaddressing,javax.rmi.CORBA,javax.xml.ws,javax.transaction,javax.security.auth.callback,javax.xml.ws.soap,org.apache.openejb.client.proxy,org.omg.CORBA,javax.ejb,javax.jws,javax.mail,javax.xml.bind,javax.rmi,javax.security.auth'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.openejb.openejb-core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.openejb.openejb-core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client.java)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client.java ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client.proxy)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client.proxy ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
</resource>
<resource id='org.apache.openejb.openejb-client/3.1.0' presentationname='openejb-client' symbolicname='org.apache.openejb.openejb-client' uri='../org/apache/openejb/openejb-client/3.1/openejb-client-3.1.jar' version='3.1.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    199516
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-client'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-client'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.client.java'/>
    <p n='uses' v='javax.naming,javax.naming.spi,org.apache.openejb.client'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.client.proxy'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.client'/>
    <p n='uses' v='javax.xml.ws.handler,javax.security.auth.login,javax.xml.namespace,javax.naming.spi,javax.xml.transform,javax.sql,javax.naming,javax.security.auth.spi,javax.xml.ws.spi,javax.xml.ws.wsaddressing,javax.rmi.CORBA,javax.xml.ws,javax.transaction,javax.security.auth.callback,javax.xml.ws.soap,org.apache.openejb.client.proxy,org.omg.CORBA,javax.ejb,javax.jws,javax.net,javax.mail,javax.xml.bind,javax.rmi,javax.security.auth,javax.net.ssl'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.openejb.openejb-core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.openejb.openejb-core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client.java)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client.java ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client.proxy)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client.proxy ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
</resource>
<resource id='org.apache.openejb.openejb-client/3.0.0' presentationname='openejb-client' symbolicname='org.apache.openejb.openejb-client' uri='../org/apache/openejb/openejb-client/3.0/openejb-client-3.0.jar' version='3.0.0'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    166078
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-client'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-client'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.client.java'/>
    <p n='uses' v='javax.naming,javax.naming.spi,org.apache.openejb.client'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.client.proxy'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.client'/>
    <p n='uses' v='javax.xml.ws.handler,javax.security.auth.login,javax.xml.namespace,javax.naming.spi,javax.xml.transform,javax.sql,javax.naming,javax.security.auth.spi,javax.xml.ws.spi,javax.xml.ws.wsaddressing,javax.rmi.CORBA,javax.xml.ws,javax.transaction,javax.security.auth.callback,javax.xml.ws.soap,org.apache.openejb.client.proxy,org.omg.CORBA,javax.ejb,javax.jws,javax.mail,javax.xml.bind,javax.rmi,javax.security.auth'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.openejb.openejb-core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.openejb.openejb-core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client.java)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client.java ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client.proxy)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client.proxy ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
</resource>
<resource id='org.apache.openejb.openejb-client/3.0.0.beta-2' presentationname='openejb-client' symbolicname='org.apache.openejb.openejb-client' uri='../org/apache/openejb/openejb-client/3.0-beta-2/openejb-client-3.0-beta-2.jar' version='3.0.0.beta-2'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    158284
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-client'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-client'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.client.java'/>
    <p n='uses' v='javax.naming,javax.naming.spi,org.apache.openejb.client'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.client.proxy'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.client'/>
    <p n='uses' v='javax.xml.ws.handler,javax.security.auth.login,javax.xml.namespace,javax.naming.spi,javax.sql,javax.naming,javax.security.auth.spi,javax.xml.ws.spi,javax.rmi.CORBA,javax.xml.ws,javax.transaction,javax.security.auth.callback,javax.xml.ws.soap,org.apache.openejb.client.proxy,org.omg.CORBA,javax.ejb,javax.jws,javax.mail,javax.xml.bind,javax.rmi,javax.security.auth'/>
    <p n='version' t='version' v='3.0.0.beta-2'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.openejb.openejb-core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.openejb.openejb-core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi.CORBA
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client.java)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client.java ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.client.proxy)(version&gt;=3.0.0.beta-2))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.client.proxy ;version=3.0.0.beta-2
  </require>
  <require extend='false' filter='(&amp;(package=org.omg.CORBA)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.omg.CORBA
  </require>
</resource>
<resource id='org.apache.openejb.openejb-api/3.1.1' presentationname='openejb-api' symbolicname='org.apache.openejb.openejb-api' uri='../org/apache/openejb/openejb-api/3.1.1/openejb-api-3.1.1.jar' version='3.1.1'>
  <description>
    Apache OpenEJB is an open source, modular, configurable and
    
    
    
    
    
    
    
    
    
    
    
     extendable
    
     EJB
     Container
    
     System
     and
     EJB
    
   
      Server.
  </description>
  <documentation>
    http://openejb.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    8517
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='openejb-api'/>
    <p n='symbolicname' v='org.apache.openejb.openejb-api'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openejb.api'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.openejb.api)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.openejb.api ;version=3.1.1
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-j2ee-management_1.1_spec/1.0.1' presentationname='geronimo-j2ee-management_1.1_spec' symbolicname='org.apache.geronimo.specs.geronimo-j2ee-management_1.1_spec' uri='../org/apache/geronimo/specs/geronimo-j2ee-management_1.1_spec/1.0.1/geronimo-j2ee-management_1.1_spec-1.0.1.jar' version='1.0.1'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20220
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-j2ee-management_1.1_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-j2ee-management_1.1_spec'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.management.j2ee.statistics'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.management.j2ee'/>
    <p n='uses' v='javax.ejb,javax.management'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.j2ee)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.j2ee ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.j2ee.statistics)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.j2ee.statistics ;version=1.1.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-concurrent_1.0_spec/1.0.0.EA' presentationname='geronimo-concurrent_1.0_spec' symbolicname='org.apache.geronimo.specs.geronimo-concurrent_1.0_spec' uri='../org/apache/geronimo/specs/geronimo-concurrent_1.0_spec/1.0-EA/geronimo-concurrent_1.0_spec-1.0-EA.jar' version='1.0.0.EA'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12602
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-concurrent_1.0_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-concurrent_1.0_spec'/>
    <p n='version' t='version' v='1.0.0.EA'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.util.concurrent'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.util.concurrent)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.util.concurrent ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-stax-api_1.0_spec/1.0.1' presentationname='geronimo-stax-api_1.0_spec' symbolicname='org.apache.geronimo.specs.geronimo-stax-api_1.0_spec' uri='../org/apache/geronimo/specs/geronimo-stax-api_1.0_spec/1.0.1/geronimo-stax-api_1.0_spec-1.0.1.jar' version='1.0.1'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28804
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-stax-api_1.0_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-stax-api_1.0_spec'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.events'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.util'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.transform,javax.xml.stream.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-jpa_3.0_spec/1.1.1' presentationname='geronimo-jpa_3.0_spec' symbolicname='org.apache.geronimo.specs.geronimo-jpa_3.0_spec' uri='../org/apache/geronimo/specs/geronimo-jpa_3.0_spec/1.1.1/geronimo-jpa_3.0_spec-1.1.1.jar' version='1.1.1'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    52877
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-jpa_3.0_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-jpa_3.0_spec'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.persistence.spi'/>
    <p n='uses' v='javax.persistence,javax.sql'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.persistence'/>
    <p n='uses' v='javax.persistence.spi'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-servlet_2.5_spec/1.1.2' presentationname='geronimo-servlet_2.5_spec' symbolicname='org.apache.geronimo.specs.geronimo-servlet_2.5_spec' uri='../org/apache/geronimo/specs/geronimo-servlet_2.5_spec/1.1.2/geronimo-servlet_2.5_spec-1.1.2.jar' version='1.1.2'>
  <description>
    Servlet 2.5 Specification
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    71301
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-servlet_2.5_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-servlet_2.5_spec'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.http'/>
    <p n='uses' v='javax.servlet'/>
    <p n='version' t='version' v='2.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet'/>
    <p n='version' t='version' v='2.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.resources'/>
    <p n='version' t='version' v='2.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.resources)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.resources ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-servlet_2.5_spec/1.1.1' presentationname='geronimo-servlet_2.5_spec' symbolicname='org.apache.geronimo.specs.geronimo-servlet_2.5_spec' uri='../org/apache/geronimo/specs/geronimo-servlet_2.5_spec/1.1.1/geronimo-servlet_2.5_spec-1.1.1.jar' version='1.1.1'>
  <description>
    Servlet 2.5 Specification
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    71713
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-servlet_2.5_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-servlet_2.5_spec'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.http'/>
    <p n='uses' v='javax.servlet'/>
    <p n='version' t='version' v='2.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet'/>
    <p n='version' t='version' v='2.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.resources'/>
    <p n='version' t='version' v='2.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.resources)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.resources ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-servlet_2.5_spec/1.2.0' presentationname='geronimo-servlet_2.5_spec' symbolicname='org.apache.geronimo.specs.geronimo-servlet_2.5_spec' uri='../org/apache/geronimo/specs/geronimo-servlet_2.5_spec/1.2/geronimo-servlet_2.5_spec-1.2.jar' version='1.2.0'>
  <description>
    Servlet 2.5 Specification
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    70593
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-servlet_2.5_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-servlet_2.5_spec'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.http'/>
    <p n='uses' v='javax.servlet'/>
    <p n='version' t='version' v='2.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet'/>
    <p n='version' t='version' v='2.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.resources'/>
    <p n='version' t='version' v='2.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.resources)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.resources ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-annotation_1.0_spec/1.1.1' presentationname='geronimo-annotation_1.0_spec' symbolicname='org.apache.geronimo.specs.geronimo-annotation_1.0_spec' uri='../org/apache/geronimo/specs/geronimo-annotation_1.0_spec/1.1.1/geronimo-annotation_1.0_spec-1.1.1.jar' version='1.1.1'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12452
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-annotation_1.0_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-annotation_1.0_spec'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.annotation'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.annotation.security'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation.security)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation.security ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-j2ee-connector_1.5_spec/2.0.0' presentationname='geronimo-j2ee-connector_1.5_spec' symbolicname='org.apache.geronimo.specs.geronimo-j2ee-connector_1.5_spec' uri='../org/apache/geronimo/specs/geronimo-j2ee-connector_1.5_spec/2.0.0/geronimo-j2ee-connector_1.5_spec-2.0.0.jar' version='2.0.0'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    37477
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-j2ee-connector_1.5_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-j2ee-connector_1.5_spec'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.resource.spi.endpoint'/>
    <p n='uses' v='javax.resource.spi,javax.resource,javax.transaction.xa'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.resource.spi'/>
    <p n='uses' v='javax.resource.spi.endpoint,javax.resource.spi.work,javax.resource,javax.transaction.xa,javax.security.auth'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.resource.spi.work'/>
    <p n='uses' v='javax.resource,javax.transaction.xa'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.resource.spi.security'/>
    <p n='uses' v='javax.resource.spi'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.resource'/>
    <p n='uses' v='javax.naming'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.resource.cci'/>
    <p n='uses' v='javax.resource'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.cci)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.cci ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.endpoint)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.endpoint ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.work)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.work ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-jms_1.1_spec/1.1.1' presentationname='geronimo-jms_1.1_spec' symbolicname='org.apache.geronimo.specs.geronimo-jms_1.1_spec' uri='../org/apache/geronimo/specs/geronimo-jms_1.1_spec/1.1.1/geronimo-jms_1.1_spec-1.1.1.jar' version='1.1.1'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    32359
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-jms_1.1_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-jms_1.1_spec'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jms'/>
    <p n='uses' v='javax.transaction.xa'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-jaxws_2.1_spec/1.0.0' presentationname='geronimo-jaxws_2.1_spec' symbolicname='org.apache.geronimo.specs.geronimo-jaxws_2.1_spec' uri='../org/apache/geronimo/specs/geronimo-jaxws_2.1_spec/1.0/geronimo-jaxws_2.1_spec-1.0.jar' version='1.0.0'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    47817
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-jaxws_2.1_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-jaxws_2.1_spec'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.soap'/>
    <p n='uses' v='javax.xml.soap,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.http'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.soap,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.spi'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.transform,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.wsaddressing'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws.spi,org.w3c.dom,javax.xml.ws,javax.xml.bind,javax.xml.bind.annotation,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,org.w3c.dom,javax.xml.bind.annotation,javax.xml.transform,javax.xml.ws.spi,javax.xml.transform.stream,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-el_1.0_spec/1.0.1' presentationname='geronimo-el_1.0_spec' symbolicname='org.apache.geronimo.specs.geronimo-el_1.0_spec' uri='../org/apache/geronimo/specs/geronimo-el_1.0_spec/1.0.1/geronimo-el_1.0_spec-1.0.1.jar' version='1.0.1'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    34365
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-el_1.0_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-el_1.0_spec'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.el'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.el)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.el ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-jaxr_1.0_spec/2.0.0' presentationname='geronimo-jaxr_1.0_spec' symbolicname='org.apache.geronimo.specs.geronimo-jaxr_1.0_spec' uri='../org/apache/geronimo/specs/geronimo-jaxr_1.0_spec/2.0.0/geronimo-jaxr_1.0_spec-2.0.0.jar' version='2.0.0'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    34317
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-jaxr_1.0_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-jaxr_1.0_spec'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.registry.infomodel'/>
    <p n='uses' v='javax.activation,javax.xml.registry'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.registry'/>
    <p n='uses' v='javax.activation,javax.xml.registry.infomodel'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.registry)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.registry ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.registry.infomodel)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.registry.infomodel ;version=1.1.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-jaxrpc_1.1_spec/2.0.0' presentationname='geronimo-jaxrpc_1.1_spec' symbolicname='org.apache.geronimo.specs.geronimo-jaxrpc_1.1_spec' uri='../org/apache/geronimo/specs/geronimo-jaxrpc_1.1_spec/2.0.0/geronimo-jaxrpc_1.1_spec-2.0.0.jar' version='2.0.0'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    35148
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-jaxrpc_1.1_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-jaxrpc_1.1_spec'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.rpc.handler'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.rpc.holders'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.rpc.encoding'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.rpc'/>
    <p n='uses' v='javax.xml.rpc.handler,javax.xml.rpc.encoding,javax.xml.namespace'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.rpc.handler.soap'/>
    <p n='uses' v='javax.xml.soap,javax.xml.rpc.handler'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.rpc.server'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.xml.rpc.handler,javax.xml.rpc'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.rpc.soap'/>
    <p n='uses' v='javax.xml.soap,javax.xml.namespace'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.encoding)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.encoding ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.handler ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler.soap)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.handler.soap ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.holders)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.holders ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.server)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.server ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.soap)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.rpc.soap ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-jta_1.1_spec/1.1.1' presentationname='geronimo-jta_1.1_spec' symbolicname='org.apache.geronimo.specs.geronimo-jta_1.1_spec' uri='../org/apache/geronimo/specs/geronimo-jta_1.1_spec/1.1.1/geronimo-jta_1.1_spec-1.1.1.jar' version='1.1.1'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16030
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-jta_1.1_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-jta_1.1_spec'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.transaction.xa'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.transaction'/>
    <p n='uses' v='javax.transaction.xa'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa ;version=1.1.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-activation_1.1_spec/1.0.1' presentationname='geronimo-activation_1.1_spec' symbolicname='org.apache.geronimo.specs.geronimo-activation_1.1_spec' uri='../org/apache/geronimo/specs/geronimo-activation_1.1_spec/1.0.1/geronimo-activation_1.1_spec-1.0.1.jar' version='1.0.1'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    35638
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-activation_1.1_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-activation_1.1_spec'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.activation'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-activation_1.1_spec/1.0.2' presentationname='geronimo-activation_1.1_spec' symbolicname='org.apache.geronimo.specs.geronimo-activation_1.1_spec' uri='../org/apache/geronimo/specs/geronimo-activation_1.1_spec/1.0.2/geronimo-activation_1.1_spec-1.0.2.jar' version='1.0.2'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    34126
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-activation_1.1_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-activation_1.1_spec'/>
    <p n='version' t='version' v='1.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.activation'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-ws-metadata_2.0_spec/1.1.2' presentationname='geronimo-ws-metadata_2.0_spec' symbolicname='org.apache.geronimo.specs.geronimo-ws-metadata_2.0_spec' uri='../org/apache/geronimo/specs/geronimo-ws-metadata_2.0_spec/1.1.2/geronimo-ws-metadata_2.0_spec-1.1.2.jar' version='1.1.2'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14611
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-ws-metadata_2.0_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-ws-metadata_2.0_spec'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jws.soap'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-interceptor_3.0_spec/1.0.1' presentationname='geronimo-interceptor_3.0_spec' symbolicname='org.apache.geronimo.specs.geronimo-interceptor_3.0_spec' uri='../org/apache/geronimo/specs/geronimo-interceptor_3.0_spec/1.0.1/geronimo-interceptor_3.0_spec-1.0.1.jar' version='1.0.1'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    9220
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-interceptor_3.0_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-interceptor_3.0_spec'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.interceptor'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.interceptor)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.interceptor ;version=3.0.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-ejb_3.0_spec/1.0.1' presentationname='geronimo-ejb_3.0_spec' symbolicname='org.apache.geronimo.specs.geronimo-ejb_3.0_spec' uri='../org/apache/geronimo/specs/geronimo-ejb_3.0_spec/1.0.1/geronimo-ejb_3.0_spec-1.0.1.jar' version='1.0.1'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    32102
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-ejb_3.0_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-ejb_3.0_spec'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.ejb'/>
    <p n='uses' v='javax.xml.rpc.handler,javax.transaction'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.ejb.spi'/>
    <p n='uses' v='javax.ejb'/>
    <p n='version' t='version' v='3.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb.spi)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb.spi ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-javamail_1.4_spec/1.3.0' presentationname='geronimo-javamail_1.4_spec' symbolicname='org.apache.geronimo.specs.geronimo-javamail_1.4_spec' uri='../org/apache/geronimo/specs/geronimo-javamail_1.4_spec/1.3/geronimo-javamail_1.4_spec-1.3.jar' version='1.3.0'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    202974
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-javamail_1.4_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-javamail_1.4_spec'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.search'/>
    <p n='uses' v='javax.mail'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.util'/>
    <p n='uses' v='javax.mail.internet,javax.activation'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.event'/>
    <p n='uses' v='javax.mail'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.internet'/>
    <p n='uses' v='javax.activation,javax.mail,org.apache.geronimo.mail.util'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail'/>
    <p n='uses' v='javax.mail.search,javax.mail.event,javax.activation'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.event)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.event ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.search)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.search ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-javamail_1.4_spec/1.4.0' presentationname='geronimo-javamail_1.4_spec' symbolicname='org.apache.geronimo.specs.geronimo-javamail_1.4_spec' uri='../org/apache/geronimo/specs/geronimo-javamail_1.4_spec/1.4/geronimo-javamail_1.4_spec-1.4.jar' version='1.4.0'>
  <description>
    Javamail 1.4 Specification
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    203921
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-javamail_1.4_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-javamail_1.4_spec'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.search'/>
    <p n='uses' v='javax.mail'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.util'/>
    <p n='uses' v='javax.mail.internet,javax.activation'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.event'/>
    <p n='uses' v='javax.mail'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.internet'/>
    <p n='uses' v='javax.activation,javax.mail,org.apache.geronimo.mail.util'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail'/>
    <p n='uses' v='javax.mail.search,javax.mail.event,javax.activation'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.event)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.event ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.search)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.search ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-javamail_1.4_spec/1.6.0' presentationname='geronimo-javamail_1.4_spec' symbolicname='org.apache.geronimo.specs.geronimo-javamail_1.4_spec' uri='../org/apache/geronimo/specs/geronimo-javamail_1.4_spec/1.6/geronimo-javamail_1.4_spec-1.6.jar' version='1.6.0'>
  <description>
    Javamail 1.4 Specification
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    204953
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-javamail_1.4_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-javamail_1.4_spec'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.search'/>
    <p n='uses' v='javax.mail'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.util'/>
    <p n='uses' v='javax.mail.internet,javax.activation'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.event'/>
    <p n='uses' v='javax.mail'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.internet'/>
    <p n='uses' v='javax.activation,javax.mail,org.apache.geronimo.mail.util'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail'/>
    <p n='uses' v='javax.mail.search,javax.mail.event,javax.activation'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.event)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.event ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.search)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.search ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-javamail_1.4_spec/1.5.0' presentationname='geronimo-javamail_1.4_spec' symbolicname='org.apache.geronimo.specs.geronimo-javamail_1.4_spec' uri='../org/apache/geronimo/specs/geronimo-javamail_1.4_spec/1.5/geronimo-javamail_1.4_spec-1.5.jar' version='1.5.0'>
  <description>
    Javamail 1.4 Specification
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    204851
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-javamail_1.4_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-javamail_1.4_spec'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.search'/>
    <p n='uses' v='javax.mail'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.util'/>
    <p n='uses' v='javax.mail.internet,javax.activation'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.event'/>
    <p n='uses' v='javax.mail'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.internet'/>
    <p n='uses' v='javax.activation,javax.mail,org.apache.geronimo.mail.util'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail'/>
    <p n='uses' v='javax.mail.search,javax.mail.event,javax.activation'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.event)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.event ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.search)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.search ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-javamail_1.4_spec/1.2.0' presentationname='geronimo-javamail_1.4_spec' symbolicname='org.apache.geronimo.specs.geronimo-javamail_1.4_spec' uri='../org/apache/geronimo/specs/geronimo-javamail_1.4_spec/1.2/geronimo-javamail_1.4_spec-1.2.jar' version='1.2.0'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    199577
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-javamail_1.4_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-javamail_1.4_spec'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.search'/>
    <p n='uses' v='javax.mail'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.util'/>
    <p n='uses' v='javax.mail.internet,javax.activation'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.event'/>
    <p n='uses' v='javax.mail'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.internet'/>
    <p n='uses' v='javax.activation,javax.mail,org.apache.geronimo.mail.util'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail'/>
    <p n='uses' v='javax.mail.search,javax.mail.event,javax.activation'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.event)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.event ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.search)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.search ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-jaxb_2.1_spec/1.0.0' presentationname='Apache JAXB 2.1 Spec' symbolicname='org.apache.geronimo.specs.geronimo-jaxb_2.1_spec' uri='../org/apache/geronimo/specs/geronimo-jaxb_2.1_spec/1.0/geronimo-jaxb_2.1_spec-1.0.jar' version='1.0.0'>
  <description>
    Java API for XML binding 2.1 API
  </description>
  <documentation>
    http://geronimo.apache.org/maven/specs/geronimo-jaxb_2.1_spec/1.0
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    78484
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache JAXB 2.1 Spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-jaxb_2.1_spec'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.attachment'/>
    <p n='uses' v='javax.activation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.helpers'/>
    <p n='uses' v='javax.xml.bind.annotation.adapters,javax.xml.transform.dom,org.w3c.dom,org.xml.sax,javax.xml.bind.attachment,javax.xml.stream,javax.xml.transform,javax.xml.transform.stream,javax.xml.validation,javax.xml.transform.sax,javax.xml.bind,javax.xml.parsers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation'/>
    <p n='uses' v='javax.xml.transform,javax.xml.bind,javax.xml.parsers,javax.xml.transform.dom,org.w3c.dom'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.util'/>
    <p n='uses' v='javax.xml.transform.sax,javax.xml.bind,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation.adapters'/>
    <p n='uses' v='javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind'/>
    <p n='uses' v='javax.xml.validation,javax.xml.namespace,javax.xml.transform,javax.xml.bind.annotation,javax.xml.transform.stream,javax.xml.bind.attachment,javax.xml.stream,javax.xml.bind.annotation.adapters,org.w3c.dom,org.xml.sax'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.helpers)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.helpers ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-jsp_2.1_spec/1.0.1' presentationname='geronimo-jsp_2.1_spec' symbolicname='org.apache.geronimo.specs.geronimo-jsp_2.1_spec' uri='../org/apache/geronimo/specs/geronimo-jsp_2.1_spec/1.0.1/geronimo-jsp_2.1_spec-1.0.1.jar' version='1.0.1'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    73485
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-jsp_2.1_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-jsp_2.1_spec'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.jsp.tagext'/>
    <p n='uses' v='javax.servlet.jsp'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.jsp.el'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.servlet.jsp,javax.el'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.jsp.resources'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.jsp'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.servlet.jsp.tagext,javax.servlet.jsp.el,javax.el'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.el)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.el
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.el)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp.el ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.resources)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp.resources ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.tagext)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp.tagext ;version=2.1.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-saaj_1.3_spec/1.0.1' presentationname='geronimo-saaj_1.3_spec' symbolicname='org.apache.geronimo.specs.geronimo-saaj_1.3_spec' uri='../org/apache/geronimo/specs/geronimo-saaj_1.3_spec/1.0.1/geronimo-saaj_1.3_spec-1.0.1.jar' version='1.0.1'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    29445
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-saaj_1.3_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-saaj_1.3_spec'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.soap'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.namespace,javax.activation,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-saaj_1.3_spec/1.0.0' presentationname='geronimo-saaj_1.3_spec' symbolicname='org.apache.geronimo.specs.geronimo-saaj_1.3_spec' uri='../org/apache/geronimo/specs/geronimo-saaj_1.3_spec/1.0.0/geronimo-saaj_1.3_spec-1.0.0.jar' version='1.0.0'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    29086
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-saaj_1.3_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-saaj_1.3_spec'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.soap'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.namespace,javax.activation,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-jaspic_1.0_spec/1.0.0' presentationname='Java Authentication SPI for Containers' symbolicname='org.apache.geronimo.specs.geronimo-jaspic_1.0_spec' uri='../org/apache/geronimo/specs/geronimo-jaspic_1.0_spec/1.0/geronimo-jaspic_1.0_spec-1.0.jar' version='1.0.0'>
  <description>
    Java Authentication Service Provider Interface for Containers
    
    
    
    
    
    
    
    
    
    
    
     (JSR-196)
    
     api
  </description>
  <documentation>
    http://geronimo.apache.org/maven/specs/geronimo-jaspic_1.0_spec/1.0
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    30548
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Java Authentication SPI for Containers'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-jaspic_1.0_spec'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.security.auth.message'/>
    <p n='uses' v='javax.security.auth.login,javax.security.auth'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.security.auth.message.callback'/>
    <p n='uses' v='javax.security.auth.callback,javax.security.auth,javax.security.auth.x500,javax.crypto'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.security.auth.message.module'/>
    <p n='uses' v='javax.security.auth.callback,javax.security.auth.message'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.security.auth.message.config'/>
    <p n='uses' v='javax.security.auth.message,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.message)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.message ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.message.callback)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.message.callback ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.message.config)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.message.config ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.message.module)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.message.module ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-jacc_1.1_spec/1.0.1' presentationname='geronimo-jacc_1.1_spec' symbolicname='org.apache.geronimo.specs.geronimo-jacc_1.1_spec' uri='../org/apache/geronimo/specs/geronimo-jacc_1.1_spec/1.0.1/geronimo-jacc_1.1_spec-1.0.1.jar' version='1.0.1'>
  <description>
    Provides open-source implementations of Sun specifications.
  </description>
  <documentation>
    http://www.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    33685
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='geronimo-jacc_1.1_spec'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-jacc_1.1_spec'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.security.jacc'/>
    <p n='uses' v='javax.servlet.http'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.security.jacc)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.jacc ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-jacc_1.1_spec/1.0.2' presentationname='J2EE JACC 1.1' symbolicname='org.apache.geronimo.specs.geronimo-jacc_1.1_spec' uri='../org/apache/geronimo/specs/geronimo-jacc_1.1_spec/1.0.2/geronimo-jacc_1.1_spec-1.0.2.jar' version='1.0.2'>
  <description>
    Java Access Control for Containers 1.1 API
  </description>
  <documentation>
    http://geronimo.apache.org/maven/specs/geronimo-jacc_1.1_spec/1.0.2
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    36125
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='J2EE JACC 1.1'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-jacc_1.1_spec'/>
    <p n='version' t='version' v='1.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.security.jacc'/>
    <p n='uses' v='javax.servlet.http'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.security.jacc)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.jacc ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.geronimo.components.geronimo-connector/2.1.3' presentationname='Geronimo TxManager :: Connector' symbolicname='org.apache.geronimo.components.geronimo-connector' uri='../org/apache/geronimo/components/geronimo-connector/2.1.3/geronimo-connector-2.1.3.jar' version='2.1.3'>
  <description>
    Geronimo Transaction Manager
  </description>
  <documentation>
    http://geronimo.apache.org/maven/txmanager/2.1.3/geronimo-connector
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    104444
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Geronimo TxManager :: Connector'/>
    <p n='symbolicname' v='org.apache.geronimo.components.geronimo-connector'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.connector.outbound.connectionmanagerconfig'/>
    <p n='uses' v='javax.transaction,org.apache.geronimo.connector.outbound,org.apache.geronimo.connector.outbound.transactionlog'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.connector.outbound.transactionlog'/>
    <p n='uses' v='javax.resource,javax.resource.spi,javax.transaction.xa,org.apache.geronimo.transaction.manager,org.apache.geronimo.connector.outbound'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.connector'/>
    <p n='uses' v='javax.resource,javax.resource.spi,javax.resource.spi.endpoint,javax.transaction,org.apache.geronimo.connector.outbound,org.apache.geronimo.transaction.manager,javax.resource.spi.work,javax.transaction.xa'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.connector.outbound.connectiontracking'/>
    <p n='uses' v='javax.resource,org.apache.geronimo.connector.outbound,javax.resource.spi,org.slf4j,javax.transaction,org.apache.geronimo.transaction.manager'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.connector.work'/>
    <p n='uses' v='org.apache.geronimo.connector.work.pool,javax.resource.spi.work,org.apache.geronimo.transaction.manager,org.slf4j,javax.transaction,javax.transaction.xa'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.connector.outbound.security'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.connector.work.pool'/>
    <p n='uses' v='org.apache.geronimo.connector.work,javax.resource.spi.work,org.slf4j'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.connector.outbound'/>
    <p n='uses' v='org.apache.geronimo.connector.outbound.connectionmanagerconfig,javax.resource,javax.resource.spi,javax.transaction,javax.transaction.xa,org.apache.geronimo.transaction.manager,javax.security.auth,org.slf4j,org.apache.geronimo.connector.outbound.connectiontracking,org.apache.geronimo.connector'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=1.5.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package javax.resource ;version=[1.5.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=1.5.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi ;version=[1.5.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.endpoint)(version&gt;=1.5.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.endpoint ;version=[1.5.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.work)(version&gt;=1.5.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.work ;version=[1.5.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=1.1.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package javax.transaction ;version=[1.1.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=1.1.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa ;version=[1.1.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.manager)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.transaction.manager ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.4.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=[1.4.0,2.0.0)
  </require>
</resource>
<resource id='org.apache.geronimo.components.geronimo-transaction/2.1.3' presentationname='Geronimo TxManager :: Transaction' symbolicname='org.apache.geronimo.components.geronimo-transaction' uri='../org/apache/geronimo/components/geronimo-transaction/2.1.3/geronimo-transaction-2.1.3.jar' version='2.1.3'>
  <description>
    Geronimo Transaction Manager
  </description>
  <documentation>
    http://geronimo.apache.org/maven/txmanager/2.1.3/geronimo-transaction
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    57705
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Geronimo TxManager :: Transaction'/>
    <p n='symbolicname' v='org.apache.geronimo.components.geronimo-transaction'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.transaction.log'/>
    <p n='uses' v='org.objectweb.howl.log,org.objectweb.howl.log.xa,javax.transaction.xa,org.apache.geronimo.transaction.manager,org.slf4j'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.transaction.manager'/>
    <p n='uses' v='javax.resource.spi,javax.transaction,javax.transaction.xa,org.slf4j,org.apache.geronimo.transaction.log'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.transaction'/>
    <p n='uses' v='javax.transaction'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=1.5.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi ;version=[1.5.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=1.1.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package javax.transaction ;version=[1.1.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=1.1.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa ;version=[1.1.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.howl.log)(version&gt;=1.0.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='true'>
    Import package org.objectweb.howl.log ;version=[1.0.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.howl.log.xa)(version&gt;=1.0.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='true'>
    Import package org.objectweb.howl.log.xa ;version=[1.0.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.4.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=[1.4.0,2.0.0)
  </require>
</resource>
<resource id='org.apache.geronimo.blueprint.core/1.0.0' presentationname='Apache Geronimo Blueprint Core' symbolicname='org.apache.geronimo.blueprint.core' uri='../org/apache/geronimo/blueprint/geronimo-blueprint-core/1.0.0/geronimo-blueprint-core-1.0.0.jar' version='1.0.0'>
  <description>
    This bundle contains the core implementation of Blueprint 
    
    
    
    
    
    
    
    
    
    
    
       
       along
     with
     the
     "ext"
     namespace
    
    
     handler.
  </description>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    251883
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Geronimo Blueprint Core'/>
    <p n='symbolicname' v='org.apache.geronimo.blueprint.core'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.blueprint.ext'/>
    <p n='uses' v='org.osgi.service.blueprint.reflect,org.apache.geronimo.blueprint,org.osgi.service.blueprint.container,org.apache.geronimo.blueprint.mutable,org.slf4j,org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.blueprint'/>
    <p n='uses' v='org.osgi.service.blueprint.reflect,org.osgi.service.blueprint.container,org.osgi.framework,org.apache.geronimo.blueprint.di,org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.blueprint.namespace'/>
    <p n='uses' v='org.osgi.service.blueprint.reflect,org.apache.geronimo.blueprint,org.apache.geronimo.blueprint.reflect,org.xml.sax,org.osgi.framework,javax.xml.transform,javax.xml.validation,org.apache.geronimo.blueprint.container,org.slf4j,org.osgi.util.tracker,javax.xml.transform.stream'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.blueprint.container'/>
    <p n='uses' v='net.sf.cglib.proxy,org.osgi.service.blueprint.container,org.osgi.service.blueprint.reflect,org.apache.geronimo.blueprint,org.slf4j,org.osgi.framework,org.apache.geronimo.blueprint.utils,org.apache.geronimo.blueprint.di,org.apache.geronimo.blueprint.namespace,org.apache.geronimo.blueprint.reflect,org.osgi.util.tracker,org.osgi.service.event,org.xml.sax,javax.xml.validation,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,org.apache.geronimo.blueprint.mutable'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.blueprint.di'/>
    <p n='uses' v='org.apache.geronimo.blueprint.container,org.osgi.service.blueprint.container,org.apache.geronimo.blueprint.utils,org.osgi.service.blueprint.reflect'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.blueprint.reflect'/>
    <p n='uses' v='org.osgi.service.blueprint.reflect,org.apache.geronimo.blueprint.mutable,org.apache.geronimo.blueprint'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.blueprint.mutable'/>
    <p n='uses' v='org.osgi.service.blueprint.reflect,org.apache.geronimo.blueprint'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.blueprint.utils'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.proxy ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.5.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=[1.5.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.blueprint.container)(version&gt;=1.0.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.blueprint.container ;version=[1.0.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.blueprint.reflect)(version&gt;=1.0.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.blueprint.reflect ;version=[1.0.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=1.1.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.event ;version=[1.1.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=[1.3.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.5.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=[1.5.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.geronimo.blueprint/1.0.0' presentationname='Apache Geronimo Blueprint Bundle' symbolicname='org.apache.geronimo.blueprint' uri='../org/apache/geronimo/blueprint/geronimo-blueprint/1.0.0/geronimo-blueprint-1.0.0.jar' version='1.0.0'>
  <description>
    This bundle contains the standalone implementation along with
    
    
    
    
    
    
    
    
    
    
    
     the
     API.
        
        It's
     composed
    
     of
   
      the blueprint-api,
    
    
    
    
 
        blueprint-core
    
    

        
  
     
   
       and blueprint-cm
     modules.
  </description>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    309094
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Geronimo Blueprint Bundle'/>
    <p n='symbolicname' v='org.apache.geronimo.blueprint'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.blueprint'/>
    <p n='uses' v='org.osgi.service.blueprint.container,org.osgi.service.blueprint.reflect,org.apache.geronimo.blueprint,org.apache.geronimo.blueprint.ext,org.apache.geronimo.blueprint.mutable'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.blueprint.container'/>
    <p n='uses' v='org.osgi.service.blueprint.reflect,org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.blueprint.reflect'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.blueprint'/>
    <p n='uses' v='org.osgi.service.blueprint.reflect,org.osgi.service.blueprint.container,org.osgi.framework,org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.blueprint.ext'/>
    <p n='uses' v='org.osgi.service.blueprint.reflect,org.apache.geronimo.blueprint,org.osgi.service.blueprint.container,org.apache.geronimo.blueprint.mutable,org.slf4j,org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.blueprint.mutable'/>
    <p n='uses' v='org.osgi.service.blueprint.reflect,org.apache.geronimo.blueprint'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.5.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=[1.5.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.blueprint)(version&gt;=1.0.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.blueprint ;version=[1.0.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.blueprint.container)(version&gt;=1.0.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.blueprint.container ;version=[1.0.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.blueprint.reflect)(version&gt;=1.0.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.blueprint.reflect ;version=[1.0.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=[1.2.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=1.1.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.event ;version=[1.1.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=[1.3.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.5.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=[1.5.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.geronimo.blueprint.cm/1.0.0' presentationname='Apache Geronimo Blueprint CM' symbolicname='org.apache.geronimo.blueprint.cm' uri='../org/apache/geronimo/blueprint/geronimo-blueprint-cm/1.0.0/geronimo-blueprint-cm-1.0.0.jar' version='1.0.0'>
  <description>
    This bundle contains the ConfigAdmin namespace for blueprint.
  </description>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    42151
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Geronimo Blueprint CM'/>
    <p n='symbolicname' v='org.apache.geronimo.blueprint.cm'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.blueprint.compendium.cm'/>
    <p n='uses' v='org.apache.geronimo.blueprint,org.osgi.service.blueprint.container,org.slf4j,org.osgi.framework,org.apache.geronimo.blueprint.utils,org.osgi.service.cm,org.apache.geronimo.blueprint.container,org.osgi.service.blueprint.reflect,org.apache.geronimo.blueprint.ext,org.w3c.dom,org.apache.geronimo.blueprint.mutable'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.blueprint)(version&gt;=1.0.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.blueprint ;version=[1.0.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.blueprint.container)(version&gt;=1.0.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.blueprint.container ;version=[1.0.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.blueprint.ext)(version&gt;=1.0.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.blueprint.ext ;version=[1.0.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.blueprint.mutable)(version&gt;=1.0.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.blueprint.mutable ;version=[1.0.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.blueprint.utils)(version&gt;=1.0.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.blueprint.utils ;version=[1.0.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.5.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=[1.5.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.blueprint.container)(version&gt;=1.0.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.blueprint.container ;version=[1.0.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.blueprint.reflect)(version&gt;=1.0.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.blueprint.reflect ;version=[1.0.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=[1.2.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.5.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=[1.5.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.geronimo.blueprint.sample/1.0.0' presentationname='Apache Geronimo Blueprint Sample' symbolicname='org.apache.geronimo.blueprint.sample' uri='../org/apache/geronimo/blueprint/org.apache.geronimo.blueprint.sample/1.0.0/org.apache.geronimo.blueprint.sample-1.0.0.jar' version='1.0.0'>
  <description>
    Example blueprint application, mostly used for integration
    
    
    
    
    
    
    
    
    
    
    
     tests.
  </description>
  <documentation>
    http://geronimo.apache.org/genesis-default-flava/genesis-java5-flava/blueprint/org.apache.geronimo.blueprint.sample
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16728
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Geronimo Blueprint Sample'/>
    <p n='symbolicname' v='org.apache.geronimo.blueprint.sample'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.blueprint.sample'/>
    <p n='uses' v='org.osgi.framework,org.osgi.service.blueprint.container'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.blueprint.sample)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.blueprint.sample
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.blueprint.container)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.blueprint.container ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.geronimo.blueprint.api/1.0.0' presentationname='Apache Geronimo Blueprint API' symbolicname='org.apache.geronimo.blueprint.api' uri='../org/apache/geronimo/blueprint/geronimo-blueprint-api/1.0.0/geronimo-blueprint-api-1.0.0.jar' version='1.0.0'>
  <description>
    This bundle contains the blueprint api 1.0.0 and the corresponding
    
    
    
    
    
    
    
    
    
    
    
     xml
     schema.
  </description>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    31904
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Geronimo Blueprint API'/>
    <p n='symbolicname' v='org.apache.geronimo.blueprint.api'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.blueprint.reflect'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.blueprint'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.blueprint.container'/>
    <p n='uses' v='org.osgi.service.blueprint.reflect,org.osgi.framework'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.5.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=[1.5.0,2.0.0)
  </require>
</resource>
<resource id='org.apache.camel.camel-uface/1.6.1' presentationname='camel-uface' symbolicname='org.apache.camel.camel-uface' uri='../org/apache/camel/camel-uface/1.6.1/camel-uface-1.6.1.jar' version='1.6.1'>
  <description>
    Camel UFace support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16282
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-uface'/>
    <p n='symbolicname' v='org.apache.camel.camel-uface'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.uface'/>
    <p n='uses' v='org.eclipse.core.databinding.observable,org.ufacekit.ui.beanform,org.ufacekit.ui,org.eclipse.core.databinding.observable.list,org.ufacekit.model,org.ufacekit.ui.layouts,org.apache.camel,org.apache.camel.spi,org.eclipse.core.databinding.observable.value,org.apache.camel.util,org.ufacekit.ui.controls,org.apache.camel.impl,org.apache.camel.component.list'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.list)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.list
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.uface)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.uface ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.core.databinding.observable)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.core.databinding.observable
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.core.databinding.observable.list)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.core.databinding.observable.list
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.core.databinding.observable.value)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.core.databinding.observable.value
  </require>
  <require extend='false' filter='(&amp;(package=org.ufacekit.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ufacekit.model
  </require>
  <require extend='false' filter='(&amp;(package=org.ufacekit.ui)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ufacekit.ui
  </require>
  <require extend='false' filter='(&amp;(package=org.ufacekit.ui.beanform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ufacekit.ui.beanform
  </require>
  <require extend='false' filter='(&amp;(package=org.ufacekit.ui.controls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ufacekit.ui.controls
  </require>
  <require extend='false' filter='(&amp;(package=org.ufacekit.ui.layouts)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ufacekit.ui.layouts
  </require>
</resource>
<resource id='org.apache.camel.camel-ftp/2.0.0' presentationname='camel-ftp' symbolicname='org.apache.camel.camel-ftp' uri='../org/apache/camel/camel-ftp/2.0.0/camel-ftp-2.0.0.jar' version='2.0.0'>
  <description>
    Camel FTP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    57594
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ftp'/>
    <p n='symbolicname' v='org.apache.camel.camel-ftp'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.file.remote'/>
    <p n='uses' v='com.jcraft.jsch,org.apache.commons.net.ftp,org.apache.camel.component.file,org.apache.camel.language.simple,org.apache.commons.logging,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor.idempotent'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.jcraft.jsch)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.jcraft.jsch
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file.remote)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file.remote ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.simple)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.simple
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.idempotent)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.idempotent
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.ftp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net.ftp
  </require>
</resource>
<resource id='org.apache.camel.camel-ftp/2.0.0.M3' presentationname='camel-ftp' symbolicname='org.apache.camel.camel-ftp' uri='../org/apache/camel/camel-ftp/2.0-M3/camel-ftp-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel FTP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    52612
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ftp'/>
    <p n='symbolicname' v='org.apache.camel.camel-ftp'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.file.remote'/>
    <p n='uses' v='com.jcraft.jsch,org.apache.commons.net.ftp,org.apache.camel.component.file,org.apache.camel.language.simple,org.apache.commons.logging,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor.idempotent'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.jcraft.jsch)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.jcraft.jsch
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file.remote)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file.remote ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.simple)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.simple
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.idempotent)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.idempotent
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.ftp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net.ftp
  </require>
</resource>
<resource id='org.apache.camel.camel-ftp/1.6.1' presentationname='camel-ftp' symbolicname='org.apache.camel.camel-ftp' uri='../org/apache/camel/camel-ftp/1.6.1/camel-ftp-1.6.1.jar' version='1.6.1'>
  <description>
    Camel FTP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    48158
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ftp'/>
    <p n='symbolicname' v='org.apache.camel.camel-ftp'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.file.remote'/>
    <p n='uses' v='org.apache.commons.net.ftp,com.jcraft.jsch,org.apache.camel.language.simple,org.apache.commons.logging,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.jcraft.jsch)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.jcraft.jsch
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file.remote)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file.remote ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.simple)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.simple
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.ftp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net.ftp
  </require>
</resource>
<resource id='org.apache.camel.camel-ftp/2.0.0.M2' presentationname='camel-ftp' symbolicname='org.apache.camel.camel-ftp' uri='../org/apache/camel/camel-ftp/2.0-M2/camel-ftp-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel FTP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    51049
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ftp'/>
    <p n='symbolicname' v='org.apache.camel.camel-ftp'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.file.remote'/>
    <p n='uses' v='com.jcraft.jsch,org.apache.commons.net.ftp,org.apache.camel.component.file,org.apache.camel.language.simple,org.apache.commons.logging,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor.idempotent'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.jcraft.jsch)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.jcraft.jsch
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file.remote)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file.remote ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.simple)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.simple
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.idempotent)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.idempotent
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.ftp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net.ftp
  </require>
</resource>
<resource id='org.apache.camel.camel-stream/2.0.0' presentationname='camel-stream' symbolicname='org.apache.camel.camel-stream' uri='../org/apache/camel/camel-stream/2.0.0/camel-stream-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Stream (System.in, System.out, System.err) support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    23508
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-stream'/>
    <p n='symbolicname' v='org.apache.camel.camel-stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.stream'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.util.concurrent'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.stream)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.stream ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util.concurrent)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util.concurrent
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-stream/2.0.0.M3' presentationname='camel-stream' symbolicname='org.apache.camel.camel-stream' uri='../org/apache/camel/camel-stream/2.0-M3/camel-stream-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Stream (System.in, System.out, System.err) support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18551
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-stream'/>
    <p n='symbolicname' v='org.apache.camel.camel-stream'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.stream'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.util.concurrent'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.stream)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.stream ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util.concurrent)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util.concurrent
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-stream/2.0.0.M2' presentationname='camel-stream' symbolicname='org.apache.camel.camel-stream' uri='../org/apache/camel/camel-stream/2.0-M2/camel-stream-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Stream (System.in, System.out, System.err) support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18298
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-stream'/>
    <p n='symbolicname' v='org.apache.camel.camel-stream'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.stream'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.util.concurrent'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.stream)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.stream ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util.concurrent)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util.concurrent
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-stream/1.6.1' presentationname='camel-stream' symbolicname='org.apache.camel.camel-stream' uri='../org/apache/camel/camel-stream/1.6.1/camel-stream-1.6.1.jar' version='1.6.1'>
  <description>
    Camel Stream (System.in, System.out, System.err) support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17564
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-stream'/>
    <p n='symbolicname' v='org.apache.camel.camel-stream'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.stream'/>
    <p n='uses' v='org.apache.camel,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.stream)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.stream ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.tests.mock-javamail_1.7/2.0.0' presentationname='org.apache.camel.tests.mock-javamail_1.7' symbolicname='org.apache.camel.tests.mock-javamail_1.7' uri='../org/apache/camel/tests/org.apache.camel.tests.mock-javamail_1.7/2.0.0/org.apache.camel.tests.mock-javamail_1.7-2.0.0.jar' version='2.0.0'>
  <description>
    This bundle simply wraps mock-javamail-1.7.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    25163
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='org.apache.camel.tests.mock-javamail_1.7'/>
    <p n='symbolicname' v='org.apache.camel.tests.mock-javamail_1.7'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jvnet.mock_javamail.provider'/>
    <p n='uses' v='javax.mail'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jvnet.mock_javamail'/>
    <p n='uses' v='javax.mail.internet,javax.mail'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet
  </require>
  <require extend='false' filter='(&amp;(package=org.jvnet.mock_javamail)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.jvnet.mock_javamail ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jvnet.mock_javamail.provider)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.jvnet.mock_javamail.provider ;version=1.7.0
  </require>
</resource>
<resource id='org.apache.camel.camel-bam/2.0.0.M3' presentationname='camel-bam' symbolicname='org.apache.camel.camel-bam' uri='../org/apache/camel/camel-bam/2.0-M3/camel-bam-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel BAM support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    46489
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-bam'/>
    <p n='symbolicname' v='org.apache.camel.camel-bam'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.bam.model'/>
    <p n='uses' v='org.springframework.orm.jpa,org.apache.camel.bam.rules,org.apache.camel.util,org.apache.commons.logging,javax.persistence,org.apache.camel.bam.processor'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.bam.rules'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.bam.model,org.apache.camel.spi,org.apache.camel,org.apache.camel.bam,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.bam'/>
    <p n='uses' v='org.apache.camel.bam.rules,org.apache.camel.bam.processor,org.springframework.transaction,org.apache.camel.model,org.springframework.orm.jpa,org.apache.camel.builder,org.apache.camel.bam.model,org.apache.camel,org.apache.camel.util,org.apache.camel.impl,org.springframework.transaction.support'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.bam.processor'/>
    <p n='uses' v='org.apache.camel.bam.rules,org.apache.commons.logging,org.springframework.transaction,org.springframework.orm.jpa,org.apache.camel.bam.model,org.apache.camel.spi,org.apache.camel,javax.persistence,org.apache.camel.util,org.apache.camel.impl,org.springframework.transaction.support'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.bam)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.bam ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.bam.model)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.bam.model ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.bam.processor)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.bam.processor ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.bam.rules)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.bam.rules ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.orm.jpa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.orm.jpa
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.support
  </require>
</resource>
<resource id='org.apache.camel.camel-bam/1.6.1' presentationname='camel-bam' symbolicname='org.apache.camel.camel-bam' uri='../org/apache/camel/camel-bam/1.6.1/camel-bam-1.6.1.jar' version='1.6.1'>
  <description>
    Camel BAM support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    46303
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-bam'/>
    <p n='symbolicname' v='org.apache.camel.camel-bam'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.bam.model'/>
    <p n='uses' v='org.springframework.orm.jpa,org.apache.camel.bam.rules,org.apache.commons.logging,org.apache.camel.util,javax.persistence,org.apache.camel.bam.processor'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.bam.rules'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.bam.model,org.apache.camel.spi,org.apache.camel,org.apache.camel.bam,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.bam'/>
    <p n='uses' v='org.apache.camel.bam.rules,org.apache.camel.bam.processor,org.springframework.transaction,org.apache.camel.builder,org.springframework.orm.jpa,org.apache.camel.bam.model,org.apache.camel,org.apache.camel.util,org.apache.camel.impl,org.springframework.transaction.support'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.bam.processor'/>
    <p n='uses' v='org.apache.camel.bam.rules,org.apache.commons.logging,org.springframework.transaction,org.springframework.orm.jpa,org.apache.camel.bam.model,org.apache.camel.spi,org.apache.camel,javax.persistence,org.apache.camel.util,org.apache.camel.impl,org.springframework.transaction.support'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.bam)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.bam ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.bam.model)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.bam.model ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.bam.processor)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.bam.processor ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.bam.rules)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.bam.rules ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.orm.jpa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.orm.jpa
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.support
  </require>
</resource>
<resource id='org.apache.camel.camel-bam/2.0.0' presentationname='camel-bam' symbolicname='org.apache.camel.camel-bam' uri='../org/apache/camel/camel-bam/2.0.0/camel-bam-2.0.0.jar' version='2.0.0'>
  <description>
    Camel BAM support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    51672
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-bam'/>
    <p n='symbolicname' v='org.apache.camel.camel-bam'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.bam.model'/>
    <p n='uses' v='org.springframework.orm.jpa,org.apache.camel.bam.rules,org.apache.camel.util,org.apache.commons.logging,javax.persistence,org.apache.camel.bam.processor'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.bam.rules'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.bam.model,org.apache.camel.spi,org.apache.camel,org.apache.camel.bam,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.bam'/>
    <p n='uses' v='org.apache.camel.bam.rules,org.apache.camel.bam.processor,org.springframework.transaction,org.apache.camel.model,org.springframework.orm.jpa,org.apache.camel.builder,org.apache.camel.bam.model,org.apache.camel,org.apache.camel.util,org.apache.camel.impl,org.springframework.transaction.support'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.bam.processor'/>
    <p n='uses' v='org.apache.camel.bam.rules,org.apache.commons.logging,org.springframework.transaction,org.springframework.orm.jpa,org.apache.camel.bam.model,org.apache.camel.spi,org.apache.camel,javax.persistence,org.apache.camel.util,org.apache.camel.impl,org.springframework.transaction.support'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.bam)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.bam ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.bam.model)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.bam.model ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.bam.processor)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.bam.processor ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.bam.rules)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.bam.rules ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.orm.jpa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.orm.jpa
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.support
  </require>
</resource>
<resource id='org.apache.camel.camel-bam/2.0.0.M2' presentationname='camel-bam' symbolicname='org.apache.camel.camel-bam' uri='../org/apache/camel/camel-bam/2.0-M2/camel-bam-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel BAM support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    46491
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-bam'/>
    <p n='symbolicname' v='org.apache.camel.camel-bam'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.bam.model'/>
    <p n='uses' v='org.springframework.orm.jpa,org.apache.camel.bam.rules,org.apache.camel.util,org.apache.commons.logging,javax.persistence,org.apache.camel.bam.processor'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.bam.rules'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.bam.model,org.apache.camel.spi,org.apache.camel,org.apache.camel.bam,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.bam'/>
    <p n='uses' v='org.apache.camel.bam.rules,org.apache.camel.bam.processor,org.springframework.transaction,org.apache.camel.model,org.apache.camel.builder,org.springframework.orm.jpa,org.apache.camel.bam.model,org.apache.camel,org.apache.camel.util,org.apache.camel.impl,org.springframework.transaction.support'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.bam.processor'/>
    <p n='uses' v='org.apache.camel.bam.rules,org.apache.commons.logging,org.springframework.transaction,org.springframework.orm.jpa,org.apache.camel.bam.model,org.apache.camel.spi,org.apache.camel,javax.persistence,org.apache.camel.util,org.apache.camel.impl,org.springframework.transaction.support'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.bam)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.bam ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.bam.model)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.bam.model ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.bam.processor)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.bam.processor ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.bam.rules)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.bam.rules ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.orm.jpa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.orm.jpa
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.support
  </require>
</resource>
<resource id='org.apache.camel.camel-bindy/2.0.0.M3' presentationname='camel-bindy' symbolicname='org.apache.camel.camel-bindy' uri='../org/apache/camel/camel-bindy/2.0-M3/camel-bindy-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Bindy support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    49976
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-bindy'/>
    <p n='symbolicname' v='org.apache.camel.camel-bindy'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy.annotation'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy.csv'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.spi,org.apache.camel.dataformat.bindy.util,org.apache.camel.dataformat.bindy,org.apache.commons.logging,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy.util'/>
    <p n='uses' v='org.apache.camel.dataformat.bindy.annotation,org.apache.camel.spi'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy.kvp'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.dataformat.bindy,org.apache.camel.dataformat.bindy.util,org.apache.commons.logging,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy'/>
    <p n='uses' v='org.apache.camel.dataformat.bindy.annotation,org.apache.camel.spi,org.apache.camel.dataformat.bindy.util,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.dataformat.bindy.format'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy.format'/>
    <p n='uses' v='org.apache.camel.dataformat.bindy,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy.annotation)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy.annotation
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy.csv)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy.csv ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy.format)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy.format ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy.kvp)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy.kvp ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy.util)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy.util ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-bindy/2.0.0' presentationname='camel-bindy' symbolicname='org.apache.camel.camel-bindy' uri='../org/apache/camel/camel-bindy/2.0.0/camel-bindy-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Bindy support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    54712
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-bindy'/>
    <p n='symbolicname' v='org.apache.camel.camel-bindy'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy.annotation'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy.csv'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.spi,org.apache.camel.dataformat.bindy.util,org.apache.camel.dataformat.bindy,org.apache.commons.logging,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy.util'/>
    <p n='uses' v='org.apache.camel.dataformat.bindy.annotation,org.apache.camel.spi'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy.kvp'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.dataformat.bindy,org.apache.camel.dataformat.bindy.util,org.apache.commons.logging,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy'/>
    <p n='uses' v='org.apache.camel.dataformat.bindy.annotation,org.apache.camel.spi,org.apache.camel.dataformat.bindy.util,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.dataformat.bindy.format'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy.format'/>
    <p n='uses' v='org.apache.camel.dataformat.bindy,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy.annotation)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy.annotation
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy.csv)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy.csv ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy.format)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy.format ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy.kvp)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy.kvp ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy.util)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy.util ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-bindy/2.0.0.M2' presentationname='camel-bindy' symbolicname='org.apache.camel.camel-bindy' uri='../org/apache/camel/camel-bindy/2.0-M2/camel-bindy-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Bindy support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    45425
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-bindy'/>
    <p n='symbolicname' v='org.apache.camel.camel-bindy'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy.annotation'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy.csv'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.dataformat.bindy,org.apache.camel.dataformat.bindy.util,org.apache.commons.logging,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy.util'/>
    <p n='uses' v='org.apache.camel.dataformat.bindy.annotation,org.apache.camel.spi'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy.kvp'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.spi,org.apache.camel.dataformat.bindy.util,org.apache.camel.dataformat.bindy,org.apache.commons.logging,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy'/>
    <p n='uses' v='org.apache.camel.dataformat.bindy.annotation,org.apache.camel.spi,org.apache.camel.dataformat.bindy.util,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.dataformat.bindy.format'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.bindy.format'/>
    <p n='uses' v='org.apache.camel.dataformat.bindy,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy.annotation)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy.annotation
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy.csv)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy.csv ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy.format)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy.format ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy.kvp)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy.kvp ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.bindy.util)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.bindy.util ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-swing/1.6.1' presentationname='camel-swing' symbolicname='org.apache.camel.camel-swing' uri='../org/apache/camel/camel-swing/1.6.1/camel-swing-1.6.1.jar' version='1.6.1'>
  <description>
    Camel Swing support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12017
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-swing'/>
    <p n='symbolicname' v='org.apache.camel.camel-swing'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.uface.swing'/>
    <p n='uses' v='org.apache.camel.component.uface,org.ufacekit.ui,org.apache.camel,org.apache.camel.spring,org.ufacekit.ui.swing.databinding.swing,org.apache.camel.impl,org.ufacekit.ui.swing,javax.swing,org.ufacekit.ui.layouts'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.uface)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.uface
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.uface.swing)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.uface.swing ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.ufacekit.ui)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ufacekit.ui
  </require>
  <require extend='false' filter='(&amp;(package=org.ufacekit.ui.layouts)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ufacekit.ui.layouts
  </require>
  <require extend='false' filter='(&amp;(package=org.ufacekit.ui.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ufacekit.ui.swing
  </require>
  <require extend='false' filter='(&amp;(package=org.ufacekit.ui.swing.databinding.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ufacekit.ui.swing.databinding.swing
  </require>
</resource>
<resource id='org.apache.camel.camel-guice/2.0.0.M2' presentationname='camel-guice' symbolicname='org.apache.camel.camel-guice' uri='../org/apache/camel/camel-guice/2.0-M2/camel-guice-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Guice
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20312
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-guice'/>
    <p n='symbolicname' v='org.apache.camel.camel-guice'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.guice.impl'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,com.google.inject,org.apache.camel.util,org.apache.camel.impl,org.guiceyfruit.support'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.guice'/>
    <p n='uses' v='org.guiceyfruit,com.google.inject.binder,com.google.inject.internal,org.apache.commons.logging,org.apache.camel.guice.impl,com.google.inject.matcher,org.guiceyfruit.jsr250,javax.naming,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,javax.annotation,com.google.inject,javax.xml.bind,org.apache.camel.view,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.google.inject)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.binder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.binder
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.internal
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.matcher)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.matcher
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.guice)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.guice ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.guice.impl)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.guice.impl ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.view)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.view
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.guiceyfruit)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.guiceyfruit
  </require>
  <require extend='false' filter='(&amp;(package=org.guiceyfruit.jsr250)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.guiceyfruit.jsr250
  </require>
  <require extend='false' filter='(&amp;(package=org.guiceyfruit.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.guiceyfruit.support
  </require>
</resource>
<resource id='org.apache.camel.camel-guice/1.6.1' presentationname='camel-guice' symbolicname='org.apache.camel.camel-guice' uri='../org/apache/camel/camel-guice/1.6.1/camel-guice-1.6.1.jar' version='1.6.1'>
  <description>
    Camel Guice
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    21337
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-guice'/>
    <p n='symbolicname' v='org.apache.camel.camel-guice'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.guice.impl'/>
    <p n='uses' v='com.google.inject.spi,org.apache.camel.spi,org.apache.camel,com.google.inject,org.apache.camel.util,org.apache.camel.impl,org.aopalliance.intercept,com.google.common.base'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.guice'/>
    <p n='uses' v='org.guiceyfruit,com.google.inject.binder,org.apache.commons.logging,org.aopalliance.intercept,com.google.common.collect,org.apache.camel.guice.impl,com.google.inject.matcher,javax.naming,org.apache.camel.builder,org.apache.camel.spi,javax.annotation,org.apache.camel,com.google.inject,org.apache.camel.util,javax.xml.bind,org.apache.camel.view,org.apache.camel.impl,com.google.inject.jsr250'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.google.common.base)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.common.base
  </require>
  <require extend='false' filter='(&amp;(package=com.google.common.collect)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.common.collect
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.binder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.binder
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.jsr250)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.jsr250
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.matcher)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.matcher
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.intercept)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.intercept
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.guice)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.guice ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.guice.impl)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.guice.impl ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.view)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.view
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.guiceyfruit)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.guiceyfruit
  </require>
</resource>
<resource id='org.apache.camel.camel-guice/2.0.0.M3' presentationname='camel-guice' symbolicname='org.apache.camel.camel-guice' uri='../org/apache/camel/camel-guice/2.0-M3/camel-guice-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Guice
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20322
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-guice'/>
    <p n='symbolicname' v='org.apache.camel.camel-guice'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.guice.impl'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,com.google.inject,org.apache.camel.util,org.apache.camel.impl,org.guiceyfruit.support'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.guice'/>
    <p n='uses' v='org.guiceyfruit,com.google.inject.binder,com.google.inject.internal,org.apache.commons.logging,org.apache.camel.guice.impl,com.google.inject.matcher,org.guiceyfruit.jsr250,javax.naming,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,javax.annotation,com.google.inject,javax.xml.bind,org.apache.camel.view,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.google.inject)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.binder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.binder
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.internal
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.matcher)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.matcher
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.guice)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.guice ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.guice.impl)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.guice.impl ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.view)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.view
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.guiceyfruit)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.guiceyfruit
  </require>
  <require extend='false' filter='(&amp;(package=org.guiceyfruit.jsr250)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.guiceyfruit.jsr250
  </require>
  <require extend='false' filter='(&amp;(package=org.guiceyfruit.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.guiceyfruit.support
  </require>
</resource>
<resource id='org.apache.camel.camel-guice/2.0.0' presentationname='camel-guice' symbolicname='org.apache.camel.camel-guice' uri='../org/apache/camel/camel-guice/2.0.0/camel-guice-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Guice
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    25345
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-guice'/>
    <p n='symbolicname' v='org.apache.camel.camel-guice'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.guice.impl'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,com.google.inject,org.apache.camel.util,org.apache.camel.impl,org.guiceyfruit.support'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.guice'/>
    <p n='uses' v='org.guiceyfruit,com.google.inject.binder,com.google.inject.internal,org.apache.commons.logging,org.apache.camel.guice.impl,com.google.inject.matcher,org.guiceyfruit.jsr250,javax.naming,org.apache.camel.builder,javax.annotation,org.apache.camel,org.apache.camel.spi,com.google.inject,javax.xml.bind,org.apache.camel.view,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.google.inject)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.binder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.binder
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.internal
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.matcher)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.matcher
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.guice)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.guice ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.guice.impl)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.guice.impl ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.view)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.view
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.guiceyfruit)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.guiceyfruit
  </require>
  <require extend='false' filter='(&amp;(package=org.guiceyfruit.jsr250)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.guiceyfruit.jsr250
  </require>
  <require extend='false' filter='(&amp;(package=org.guiceyfruit.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.guiceyfruit.support
  </require>
</resource>
<resource id='org.apache.camel.camel-jackson/2.0.0.M3' presentationname='camel-jackson' symbolicname='org.apache.camel.camel-jackson' uri='../org/apache/camel/camel-jackson/2.0-M3/camel-jackson-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Jackson support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    8813
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jackson'/>
    <p n='symbolicname' v='org.apache.camel.camel-jackson'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jackson'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.codehaus.jackson.map'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jackson)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jackson ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jackson.map)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.jackson.map
  </require>
</resource>
<resource id='org.apache.camel.camel-jackson/2.0.0' presentationname='camel-jackson' symbolicname='org.apache.camel.camel-jackson' uri='../org/apache/camel/camel-jackson/2.0.0/camel-jackson-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Jackson support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13848
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jackson'/>
    <p n='symbolicname' v='org.apache.camel.camel-jackson'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jackson'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.codehaus.jackson.map'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jackson)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jackson ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jackson.map)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.jackson.map
  </require>
</resource>
<resource id='org.apache.camel.camel-jackson/2.0.0.M2' presentationname='camel-jackson' symbolicname='org.apache.camel.camel-jackson' uri='../org/apache/camel/camel-jackson/2.0-M2/camel-jackson-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Jackson support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    8809
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jackson'/>
    <p n='symbolicname' v='org.apache.camel.camel-jackson'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jackson'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.codehaus.jackson.map'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jackson)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jackson ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jackson.map)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.jackson.map
  </require>
</resource>
<resource id='org.apache.camel.camel-jxpath/1.6.1' presentationname='camel-jxpath' symbolicname='org.apache.camel.camel-jxpath' uri='../org/apache/camel/camel-jxpath/1.6.1/camel-jxpath-1.6.1.jar' version='1.6.1'>
  <description>
    Camel JXPath support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11657
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jxpath'/>
    <p n='symbolicname' v='org.apache.camel.camel-jxpath'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.jxpath'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.language,org.apache.commons.jxpath,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.jxpath)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.jxpath ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath
  </require>
</resource>
<resource id='org.apache.camel.camel-jxpath/2.0.0.M3' presentationname='camel-jxpath' symbolicname='org.apache.camel.camel-jxpath' uri='../org/apache/camel/camel-jxpath/2.0-M3/camel-jxpath-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel JXPath support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11846
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jxpath'/>
    <p n='symbolicname' v='org.apache.camel.camel-jxpath'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.jxpath'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.language,org.apache.commons.jxpath,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.jxpath)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.jxpath ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath
  </require>
</resource>
<resource id='org.apache.camel.camel-jxpath/2.0.0' presentationname='camel-jxpath' symbolicname='org.apache.camel.camel-jxpath' uri='../org/apache/camel/camel-jxpath/2.0.0/camel-jxpath-2.0.0.jar' version='2.0.0'>
  <description>
    Camel JXPath support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16996
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jxpath'/>
    <p n='symbolicname' v='org.apache.camel.camel-jxpath'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.jxpath'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.language,org.apache.commons.jxpath,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.jxpath)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.jxpath ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath
  </require>
</resource>
<resource id='org.apache.camel.camel-jxpath/2.0.0.M2' presentationname='camel-jxpath' symbolicname='org.apache.camel.camel-jxpath' uri='../org/apache/camel/camel-jxpath/2.0-M2/camel-jxpath-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel JXPath support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11850
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jxpath'/>
    <p n='symbolicname' v='org.apache.camel.camel-jxpath'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.jxpath'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.language,org.apache.commons.jxpath,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.jxpath)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.jxpath ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath
  </require>
</resource>
<resource id='org.apache.camel.camel-jetty/2.0.0.M3' presentationname='camel-jetty' symbolicname='org.apache.camel.camel-jetty' uri='../org/apache/camel/camel-jetty/2.0-M3/camel-jetty-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Jetty support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17094
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jetty'/>
    <p n='symbolicname' v='org.apache.camel.camel-jetty'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.commons.httpclient.params,org.mortbay.jetty.nio,org.apache.commons.logging,org.mortbay.jetty.security,org.apache.commons.httpclient,javax.servlet,org.mortbay.jetty.servlet,org.apache.camel,org.apache.camel.component.http,org.apache.camel.util,org.mortbay.jetty.handler,org.mortbay.jetty,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jetty)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jetty ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.params)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.params
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.security
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.servlet
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.util.ajax
  </require>
</resource>
<resource id='org.apache.camel.camel-jetty/2.0.0' presentationname='camel-jetty' symbolicname='org.apache.camel.camel-jetty' uri='../org/apache/camel/camel-jetty/2.0.0/camel-jetty-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Jetty support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22353
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jetty'/>
    <p n='symbolicname' v='org.apache.camel.camel-jetty'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.commons.httpclient.params,org.mortbay.jetty.nio,org.apache.commons.logging,org.mortbay.jetty.security,org.apache.commons.httpclient,javax.servlet,org.mortbay.jetty.servlet,org.apache.camel,org.apache.camel.component.http,org.apache.camel.util,org.mortbay.jetty.handler,org.mortbay.jetty,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jetty)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jetty ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.params)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.params
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.security
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.servlet
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.util.ajax
  </require>
</resource>
<resource id='org.apache.camel.camel-jetty/2.0.0.M2' presentationname='camel-jetty' symbolicname='org.apache.camel.camel-jetty' uri='../org/apache/camel/camel-jetty/2.0-M2/camel-jetty-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Jetty support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17370
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jetty'/>
    <p n='symbolicname' v='org.apache.camel.camel-jetty'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.commons.httpclient.params,org.mortbay.jetty.nio,org.apache.commons.logging,org.mortbay.jetty.security,org.apache.commons.httpclient,javax.servlet,org.mortbay.jetty.servlet,org.apache.camel,org.apache.camel.component.http,org.apache.camel.util,org.mortbay.jetty.handler,org.mortbay.jetty,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jetty)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jetty ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.params)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.params
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.security
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.servlet
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.util.ajax
  </require>
</resource>
<resource id='org.apache.camel.camel-jetty/1.6.1' presentationname='camel-jetty' symbolicname='org.apache.camel.camel-jetty' uri='../org/apache/camel/camel-jetty/1.6.1/camel-jetty-1.6.1.jar' version='1.6.1'>
  <description>
    Camel Jetty support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18103
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jetty'/>
    <p n='symbolicname' v='org.apache.camel.camel-jetty'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.commons.httpclient.params,org.mortbay.jetty.nio,org.apache.commons.logging,org.mortbay.jetty.security,org.apache.commons.httpclient,javax.servlet,org.mortbay.jetty.servlet,org.apache.camel.spi,org.apache.camel,org.apache.camel.component.http,org.apache.camel.util,org.mortbay.jetty.handler,org.mortbay.jetty,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jetty)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jetty ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.params)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.params
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.security
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.servlet
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.util.ajax
  </require>
</resource>
<resource id='org.apache.camel.camel-xstream/2.0.0' presentationname='camel-xstream' symbolicname='org.apache.camel.camel-xstream' uri='../org/apache/camel/camel-xstream/2.0.0/camel-xstream-2.0.0.jar' version='2.0.0'>
  <description>
    Camel XStream support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17125
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-xstream'/>
    <p n='symbolicname' v='org.apache.camel.camel-xstream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.xstream'/>
    <p n='uses' v='com.thoughtworks.xstream.io,org.apache.camel.converter.jaxp,com.thoughtworks.xstream.io.xml,org.codehaus.jettison.mapped,com.thoughtworks.xstream,org.apache.camel.spi,org.apache.camel,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.xstream)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.xstream ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.jettison.mapped
  </require>
</resource>
<resource id='org.apache.camel.camel-xstream/2.0.0.M2' presentationname='camel-xstream' symbolicname='org.apache.camel.camel-xstream' uri='../org/apache/camel/camel-xstream/2.0-M2/camel-xstream-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel XStream support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11869
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-xstream'/>
    <p n='symbolicname' v='org.apache.camel.camel-xstream'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.xstream'/>
    <p n='uses' v='com.thoughtworks.xstream.io,org.apache.camel.converter.jaxp,com.thoughtworks.xstream.io.xml,org.codehaus.jettison.mapped,com.thoughtworks.xstream,org.apache.camel.spi,org.apache.camel,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.xstream)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.xstream ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.jettison.mapped
  </require>
</resource>
<resource id='org.apache.camel.camel-xstream/2.0.0.M3' presentationname='camel-xstream' symbolicname='org.apache.camel.camel-xstream' uri='../org/apache/camel/camel-xstream/2.0-M3/camel-xstream-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel XStream support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11863
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-xstream'/>
    <p n='symbolicname' v='org.apache.camel.camel-xstream'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.xstream'/>
    <p n='uses' v='com.thoughtworks.xstream.io,org.apache.camel.converter.jaxp,com.thoughtworks.xstream.io.xml,org.codehaus.jettison.mapped,com.thoughtworks.xstream,org.apache.camel.spi,org.apache.camel,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.xstream)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.xstream ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.jettison.mapped
  </require>
</resource>
<resource id='org.apache.camel.camel-xstream/1.6.1' presentationname='camel-xstream' symbolicname='org.apache.camel.camel-xstream' uri='../org/apache/camel/camel-xstream/1.6.1/camel-xstream-1.6.1.jar' version='1.6.1'>
  <description>
    Camel XStream support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11853
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-xstream'/>
    <p n='symbolicname' v='org.apache.camel.camel-xstream'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.xstream'/>
    <p n='uses' v='com.thoughtworks.xstream.io,org.apache.camel.converter.jaxp,com.thoughtworks.xstream.io.xml,org.codehaus.jettison.mapped,com.thoughtworks.xstream,org.apache.camel.spi,org.apache.camel,javax.xml.stream'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.xstream)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.xstream ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.jettison.mapped
  </require>
</resource>
<resource id='org.apache.camel.camel-example-spring/2.0.0.M3' presentationname='camel-example-spring' symbolicname='org.apache.camel.camel-example-spring' uri='../org/apache/camel/camel-example-spring/2.0-M3/camel-example-spring-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    An example showing how to work with Camel and Spring
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11608
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-example-spring'/>
    <p n='symbolicname' v='org.apache.camel.camel-example-spring'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.example.spring'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.apache.camel.spring'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.example.spring)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.example.spring ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
</resource>
<resource id='org.apache.camel.camel-example-spring/2.0.0' presentationname='camel-example-spring' symbolicname='org.apache.camel.camel-example-spring' uri='../org/apache/camel/camel-example-spring/2.0.0/camel-example-spring-2.0.0.jar' version='2.0.0'>
  <description>
    An example showing how to work with Camel and Spring
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17188
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-example-spring'/>
    <p n='symbolicname' v='org.apache.camel.camel-example-spring'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.example.spring'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.apache.camel.spring'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.example.spring)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.example.spring ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
</resource>
<resource id='org.apache.camel.camel-example-spring/2.0.0.M2' presentationname='camel-example-spring' symbolicname='org.apache.camel.camel-example-spring' uri='../org/apache/camel/camel-example-spring/2.0-M2/camel-example-spring-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    An example showing how to work with Camel and Spring
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11708
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-example-spring'/>
    <p n='symbolicname' v='org.apache.camel.camel-example-spring'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.example.spring'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.apache.camel.spring'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.example.spring)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.example.spring ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
</resource>
<resource id='org.apache.camel.camel-example-spring/1.6.1' presentationname='camel-example-spring' symbolicname='org.apache.camel.camel-example-spring' uri='../org/apache/camel/camel-example-spring/1.6.1/camel-example-spring-1.6.1.jar' version='1.6.1'>
  <description>
    An example showing how to work with Camel and Spring
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11350
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-example-spring'/>
    <p n='symbolicname' v='org.apache.camel.camel-example-spring'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.example.spring'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.apache.camel.spring'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.example.spring)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.example.spring ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
</resource>
<resource id='org.apache.camel.camel-spring-javaconfig/2.0.0.M3' presentationname='camel-spring-javaconfig' symbolicname='org.apache.camel.camel-spring-javaconfig' uri='../org/apache/camel/camel-spring-javaconfig/2.0-M3/camel-spring-javaconfig-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Spring JavaConfig support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13477
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-spring-javaconfig'/>
    <p n='symbolicname' v='org.apache.camel.camel-spring-javaconfig'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.javaconfig'/>
    <p n='uses' v='org.springframework.context,org.springframework.context.support,org.springframework.config.java.support,org.apache.camel.builder,org.springframework.config.java.annotation,org.springframework.config.java.context,org.apache.camel,org.apache.camel.spring,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.javaconfig)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.javaconfig ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.config.java.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.config.java.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.config.java.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.config.java.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.config.java.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.config.java.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
</resource>
<resource id='org.apache.camel.camel-spring-javaconfig/2.0.0' presentationname='camel-spring-javaconfig' symbolicname='org.apache.camel.camel-spring-javaconfig' uri='../org/apache/camel/camel-spring-javaconfig/2.0.0/camel-spring-javaconfig-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Spring JavaConfig support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18766
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-spring-javaconfig'/>
    <p n='symbolicname' v='org.apache.camel.camel-spring-javaconfig'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.javaconfig'/>
    <p n='uses' v='org.springframework.context,org.springframework.context.support,org.springframework.config.java.support,org.apache.camel.builder,org.springframework.config.java.annotation,org.springframework.config.java.context,org.apache.camel,org.apache.camel.spring,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.javaconfig)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.javaconfig ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.config.java.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.config.java.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.config.java.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.config.java.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.config.java.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.config.java.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
</resource>
<resource id='org.apache.camel.camel-spring-javaconfig/2.0.0.M2' presentationname='camel-spring-javaconfig' symbolicname='org.apache.camel.camel-spring-javaconfig' uri='../org/apache/camel/camel-spring-javaconfig/2.0-M2/camel-spring-javaconfig-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Spring JavaConfig support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13482
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-spring-javaconfig'/>
    <p n='symbolicname' v='org.apache.camel.camel-spring-javaconfig'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.javaconfig'/>
    <p n='uses' v='org.springframework.context,org.springframework.context.support,org.springframework.config.java.support,org.apache.camel.builder,org.springframework.config.java.annotation,org.springframework.config.java.context,org.apache.camel,org.apache.camel.spring,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.javaconfig)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.javaconfig ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.config.java.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.config.java.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.config.java.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.config.java.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.config.java.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.config.java.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
</resource>
<resource id='org.apache.camel.camel-amqp/2.0.0' presentationname='camel-amqp' symbolicname='org.apache.camel.camel-amqp' uri='../org/apache/camel/camel-amqp/2.0.0/camel-amqp-2.0.0.jar' version='2.0.0'>
  <description>
    Camel AMQP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15896
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-amqp'/>
    <p n='symbolicname' v='org.apache.camel.camel-amqp'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.amqp'/>
    <p n='uses' v='org.apache.qpid.url,org.apache.camel,org.apache.qpid.client,org.apache.camel.component.jms,javax.jms'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.amqp)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.amqp ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.url
  </require>
</resource>
<resource id='org.apache.camel.camel-amqp/2.0.0.M3' presentationname='camel-amqp' symbolicname='org.apache.camel.camel-amqp' uri='../org/apache/camel/camel-amqp/2.0-M3/camel-amqp-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel AMQP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10443
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-amqp'/>
    <p n='symbolicname' v='org.apache.camel.camel-amqp'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.amqp'/>
    <p n='uses' v='org.apache.qpid.url,org.apache.camel,org.apache.qpid.client,org.apache.camel.component.jms,javax.jms'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.amqp)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.amqp ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.url
  </require>
</resource>
<resource id='org.apache.camel.camel-amqp/2.0.0.M2' presentationname='camel-amqp' symbolicname='org.apache.camel.camel-amqp' uri='../org/apache/camel/camel-amqp/2.0-M2/camel-amqp-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel AMQP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10267
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-amqp'/>
    <p n='symbolicname' v='org.apache.camel.camel-amqp'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.amqp'/>
    <p n='uses' v='org.apache.qpid.url,org.apache.camel,org.apache.qpid.client,org.apache.camel.component.jms,javax.jms'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.amqp)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.amqp ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.url
  </require>
</resource>
<resource id='org.apache.camel.camel-amqp/1.6.1' presentationname='camel-amqp' symbolicname='org.apache.camel.camel-amqp' uri='../org/apache/camel/camel-amqp/1.6.1/camel-amqp-1.6.1.jar' version='1.6.1'>
  <description>
    Camel AMQP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10273
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-amqp'/>
    <p n='symbolicname' v='org.apache.camel.camel-amqp'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.amqp'/>
    <p n='uses' v='org.apache.qpid.url,org.apache.camel,org.apache.qpid.client,org.apache.camel.component.jms,javax.jms'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.amqp)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.amqp ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.url
  </require>
</resource>
<resource id='org.apache.camel.camel-core/2.0.0.M2' presentationname='camel-core' symbolicname='org.apache.camel.camel-core' uri='../org/apache/camel/camel-core/2.0-M2/camel-core-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    The Core Camel POJO based router
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1068395
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-core'/>
    <p n='symbolicname' v='org.apache.camel.camel-core'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model.loadbalancer'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.spi,org.apache.camel,javax.xml.bind.annotation,org.apache.camel.processor.loadbalancer'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.simple'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.commons.logging,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.dataset'/>
    <p n='uses' v='org.apache.camel.component.mock,org.apache.camel,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.loadbalancer'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.aggregate'/>
    <p n='uses' v='org.apache.camel,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.property'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel.spi,org.apache.camel'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.log'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.header'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel.spi,org.apache.camel'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter.jaxp'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.parsers,org.apache.camel,org.apache.camel.util,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.interceptor'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.processor'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.resequencer'/>
    <p n='uses' v='org.apache.camel'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.impl.converter'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.commons.logging'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.management'/>
    <p n='uses' v='org.apache.camel.util,org.apache.camel.impl,javax.management.modelmbean,org.apache.camel.util.concurrent,javax.management,org.apache.commons.logging,org.springframework.jmx.export.assembler,javax.management.remote,org.springframework.jmx.export.metadata,org.apache.camel.processor,org.springframework.jmx.export.annotation,org.apache.camel.model,org.apache.camel,org.apache.camel.spi'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.util.jndi'/>
    <p n='uses' v='javax.naming,org.apache.camel.spi,org.apache.camel.util,javax.naming.spi'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.util'/>
    <p n='uses' v='org.apache.camel.component.file,org.w3c.dom,org.apache.commons.logging,org.apache.camel.model,org.apache.camel,org.apache.camel.spi'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.impl'/>
    <p n='uses' v='javax.naming,org.apache.camel.processor.interceptor,org.apache.camel.impl.converter,org.apache.camel.management,org.apache.camel.util,org.apache.camel.util.concurrent,javax.activation,org.apache.commons.logging,javax.xml.bind.annotation,org.apache.camel.processor,org.apache.camel.model,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.component.bean,org.apache.camel.view,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.builder.xml'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,org.apache.camel.converter.jaxp,org.apache.camel.model.language,javax.xml.parsers,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.direct'/>
    <p n='uses' v='org.apache.camel,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.tokenizer'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.util.concurrent'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.seda'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.util.concurrent'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.ref'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.constant'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel,org.apache.camel.spi'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.file'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor.idempotent'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter'/>
    <p n='uses' v='org.apache.commons.logging,javax.xml.transform,javax.xml.transform.dom,org.apache.camel.converter.jaxp,org.apache.camel,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.bean'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.component.bean,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model.config'/>
    <p n='uses' v='org.apache.camel.processor.resequencer,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model.dataformat'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel,org.apache.camel.spi,org.w3c.dom,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.processor.aggregate,org.apache.camel.model,org.apache.camel.processor.resequencer,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor.exceptionpolicy,org.apache.camel.util.concurrent'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.vm'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.component.seda'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.timer'/>
    <p n='uses' v='org.apache.camel,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.mock'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.processor,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model.language'/>
    <p n='uses' v='org.apache.camel.language.bean,org.apache.commons.logging,javax.xml.bind.annotation,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.language.tokenizer'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model'/>
    <p n='uses' v='org.apache.camel.model.loadbalancer,org.apache.camel.model.config,org.apache.commons.logging,org.apache.camel.model.dataformat,javax.xml.bind.annotation,org.apache.camel.processor.loadbalancer,org.apache.camel.processor,org.apache.camel.processor.aggregate,org.apache.camel.model.language,org.apache.camel.processor.resequencer,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.component.bean,org.apache.camel.impl,org.apache.camel.processor.idempotent,org.apache.camel.util.concurrent'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter.stream'/>
    <p n='uses' v='org.apache.camel.converter.jaxp,javax.xml.transform.sax,org.apache.camel.converter,org.apache.camel,org.apache.commons.logging,org.apache.camel.util,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.builder'/>
    <p n='uses' v='org.apache.camel.language.bean,org.w3c.dom,org.apache.commons.logging,org.apache.camel.model.dataformat,org.apache.camel.processor,org.apache.camel.model.language,org.apache.camel.model,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.builder.xml,org.apache.camel.processor.exceptionpolicy'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jmx'/>
    <p n='uses' v='javax.management,org.apache.camel,javax.management.monitor,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.xpath'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,javax.xml.namespace,org.apache.camel.builder.xml'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spi'/>
    <p n='uses' v='org.apache.camel.model,javax.management,org.apache.camel'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,javax.activation,org.apache.camel.spi,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language'/>
    <p n='uses' v='org.apache.camel.component.bean'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.bean'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.processor,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.language,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.builder.xml'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.view'/>
    <p n='uses' v='org.w3c.dom,org.apache.commons.logging,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.dom,org.apache.camel.model.language,org.apache.camel.converter.jaxp,org.apache.camel.model,javax.xml.parsers,org.apache.camel,org.apache.camel.util,javax.xml.bind,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.exceptionpolicy'/>
    <p n='uses' v='org.apache.camel.model.language,org.apache.camel.model,org.apache.camel,org.apache.camel.util,org.apache.commons.logging'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.file.strategy'/>
    <p n='uses' v='org.apache.camel.component.file,org.apache.camel.spi,org.apache.camel,org.apache.commons.logging,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.idempotent'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.validation'/>
    <p n='uses' v='javax.xml.transform.dom,org.xml.sax,javax.xml.validation,org.apache.camel,org.apache.commons.logging,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.browse'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.impl,org.apache.camel.processor.loadbalancer'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.monitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.monitor
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder.xml)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder.xml ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.browse)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.browse ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.dataset)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.dataset ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.direct)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.direct ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file.strategy)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file.strategy ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jmx)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jmx ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.log)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.log ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mock)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mock ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.ref)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.ref ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.seda)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.seda ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.timer)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.timer ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.vm)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.vm ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.stream)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.stream ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.converter)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl.converter ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.bean)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.bean ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.constant)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.constant ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.header)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.header ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.property)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.property ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.simple)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.simple ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.tokenizer)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.tokenizer ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.xpath)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.xpath ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.management)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.management ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.config)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.config ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.dataformat)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.dataformat ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.language)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.language ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.loadbalancer)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.loadbalancer ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.aggregate)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.aggregate ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.exceptionpolicy)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.exceptionpolicy ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.idempotent)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.idempotent ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.interceptor)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.interceptor ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.loadbalancer)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.loadbalancer ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.resequencer)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.resequencer ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.validation)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.validation ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.spring.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util.concurrent)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util.concurrent ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util.jndi)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util.jndi ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.view)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.view ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.xsltc.trax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xalan.xsltc.trax
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jmx.export.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.assembler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jmx.export.assembler
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jmx.export.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.camel.camel-core/2.0.0' presentationname='camel-core' symbolicname='org.apache.camel.camel-core' uri='../org/apache/camel/camel-core/2.0.0/camel-core-2.0.0.jar' version='2.0.0'>
  <description>
    The Core Camel POJO based router
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1101511
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-core'/>
    <p n='symbolicname' v='org.apache.camel.camel-core'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model.loadbalancer'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.spi,org.apache.camel,javax.xml.bind.annotation,org.apache.camel.processor.loadbalancer'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.simple'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.commons.logging,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.dataset'/>
    <p n='uses' v='org.apache.camel.component.mock,org.apache.camel,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.loadbalancer'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.aggregate'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.property'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel.spi,org.apache.camel'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.log'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.header'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel.spi,org.apache.camel'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter.jaxp'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.parsers,org.apache.camel,org.apache.camel.util,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.interceptor'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel,org.apache.camel.spi,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.resequencer'/>
    <p n='uses' v='org.apache.camel'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.impl.converter'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.commons.logging'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.management'/>
    <p n='uses' v='org.apache.camel.util,org.apache.camel.impl,javax.management.modelmbean,org.apache.camel.util.concurrent,javax.management,org.apache.commons.logging,org.springframework.jmx.export.assembler,javax.management.remote,org.springframework.jmx.export.metadata,org.apache.camel.processor,org.springframework.jmx.export.annotation,org.apache.camel.model,org.apache.camel,org.apache.camel.spi'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.util.jndi'/>
    <p n='uses' v='javax.naming,org.apache.camel.spi,org.apache.camel.util,javax.naming.spi'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.util'/>
    <p n='uses' v='org.apache.camel.component.file,org.w3c.dom,org.apache.commons.logging,org.apache.camel,org.apache.camel.spi'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.impl'/>
    <p n='uses' v='javax.naming,org.apache.camel.processor.interceptor,org.apache.camel.impl.converter,org.apache.camel.management,org.apache.camel.util,org.apache.camel.util.concurrent,javax.activation,org.apache.commons.logging,javax.xml.bind.annotation,org.apache.camel.impl.scan,org.apache.camel.processor,org.apache.camel.model,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.component.bean,org.apache.camel.view,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.builder.xml'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,org.apache.camel.converter.jaxp,org.apache.camel.model.language,javax.xml.parsers,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.direct'/>
    <p n='uses' v='org.apache.camel,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.tokenizer'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.util.concurrent'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.seda'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.util.concurrent'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.ref'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.constant'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel,org.apache.camel.spi'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.file'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor.idempotent'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter'/>
    <p n='uses' v='org.apache.commons.logging,javax.xml.transform,javax.xml.transform.dom,org.apache.camel.converter.jaxp,org.apache.camel,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.bean'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.component.bean,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model.config'/>
    <p n='uses' v='org.apache.camel.processor.resequencer,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model.dataformat'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel,org.apache.camel.spi,org.w3c.dom,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.impl.scan'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel.util,org.springframework.util'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.processor.aggregate,org.apache.camel.model,org.apache.camel.processor.resequencer,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor.exceptionpolicy,org.apache.camel.util.concurrent'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.vm'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.component.seda'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.timer'/>
    <p n='uses' v='org.apache.camel,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.mock'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model.language'/>
    <p n='uses' v='org.apache.camel.language.bean,org.apache.commons.logging,javax.xml.bind.annotation,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.language.tokenizer'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model'/>
    <p n='uses' v='org.apache.camel.model.loadbalancer,org.apache.camel.model.config,org.apache.commons.logging,org.apache.camel.model.dataformat,javax.xml.bind.annotation,org.apache.camel.processor.loadbalancer,org.apache.camel.processor,org.apache.camel.processor.aggregate,org.apache.camel.model.language,org.apache.camel.processor.resequencer,org.apache.camel.processor.interceptor,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.camel.component.bean,org.apache.camel.impl,org.apache.camel.processor.idempotent,org.apache.camel.util.concurrent'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter.stream'/>
    <p n='uses' v='org.apache.commons.logging,javax.xml.transform,org.apache.camel.converter.jaxp,javax.xml.transform.sax,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.builder'/>
    <p n='uses' v='org.apache.camel.language.bean,org.w3c.dom,org.apache.commons.logging,org.apache.camel.model.dataformat,org.apache.camel.processor,org.apache.camel.model.language,org.apache.camel.model,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.builder.xml,org.apache.camel.processor.exceptionpolicy'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.xpath'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,javax.xml.namespace,org.apache.camel.builder.xml'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spi'/>
    <p n='uses' v='org.apache.camel.model,javax.management,org.apache.camel'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,javax.activation,org.apache.camel.spi,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language'/>
    <p n='uses' v='org.apache.camel.component.bean'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.bean'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.processor,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.language,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.builder.xml'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.view'/>
    <p n='uses' v='org.w3c.dom,org.apache.commons.logging,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.dom,org.apache.camel.model.language,org.apache.camel.converter.jaxp,org.apache.camel.model,javax.xml.parsers,org.apache.camel,org.apache.camel.util,javax.xml.bind,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.exceptionpolicy'/>
    <p n='uses' v='org.apache.camel.model.language,org.apache.camel.model,org.apache.camel,org.apache.camel.util,org.apache.commons.logging'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.file.strategy'/>
    <p n='uses' v='org.apache.camel.component.file,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.commons.logging'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.idempotent'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.validation'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.transform.sax,org.xml.sax,javax.xml.validation,org.apache.camel,org.apache.commons.logging,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.browse'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.impl,org.apache.camel.processor.loadbalancer'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder.xml)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder.xml ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.browse)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.browse ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.dataset)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.dataset ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.direct)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.direct ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file.strategy)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file.strategy ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.log)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.log ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mock)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mock ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.ref)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.ref ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.seda)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.seda ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.timer)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.timer ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.vm)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.vm ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.stream)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.stream ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.converter)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl.converter ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.scan)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl.scan ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.bean)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.bean ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.constant)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.constant ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.header)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.header ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.property)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.property ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.simple)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.simple ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.tokenizer)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.tokenizer ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.xpath)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.xpath ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.management)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.management ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.config)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.config ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.dataformat)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.dataformat ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.language)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.language ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.loadbalancer)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.loadbalancer ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.aggregate)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.aggregate ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.exceptionpolicy)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.exceptionpolicy ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.idempotent)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.idempotent ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.interceptor)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.interceptor ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.loadbalancer)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.loadbalancer ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.resequencer)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.resequencer ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.validation)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.validation ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.spring.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util.concurrent)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util.concurrent ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util.jndi)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util.jndi ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.view)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.view ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.xsltc.trax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xalan.xsltc.trax
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jmx.export.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.assembler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jmx.export.assembler
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jmx.export.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.camel.camel-core/1.6.1' presentationname='camel-core' symbolicname='org.apache.camel.camel-core' uri='../org/apache/camel/camel-core/1.6.1/camel-core-1.6.1.jar' version='1.6.1'>
  <description>
    The Core Camel POJO based router
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    901217
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-core'/>
    <p n='symbolicname' v='org.apache.camel.camel-core'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model.loadbalancer'/>
    <p n='uses' v='org.apache.camel.model.language,org.apache.camel.model,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,javax.xml.bind.annotation,org.apache.camel.processor.loadbalancer'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.simple'/>
    <p n='uses' v='org.apache.camel.language.constant,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.camel.language'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.dataset'/>
    <p n='uses' v='org.apache.camel.component.mock,org.apache.camel,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.loadbalancer'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.aggregate'/>
    <p n='uses' v='org.apache.camel,org.apache.commons.logging'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.log'/>
    <p n='uses' v='org.apache.camel.converter.stream,org.apache.camel.model,org.apache.camel.processor.interceptor,org.apache.camel.converter,org.apache.camel,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.header'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel.spi,org.apache.camel'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter.jaxp'/>
    <p n='uses' v='org.xml.sax,org.apache.camel.converter,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.parsers,org.apache.camel,org.apache.camel.util,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.resequencer'/>
    <p n='uses' v='org.apache.camel'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.interceptor'/>
    <p n='uses' v='org.apache.camel.converter.stream,org.apache.camel.model,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.processor'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.impl.converter'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.processor,org.apache.camel,org.apache.camel.spi,org.apache.camel.util'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.management'/>
    <p n='uses' v='javax.management,org.apache.commons.logging,org.springframework.jmx.export.assembler,org.springframework.jmx.export.metadata,javax.management.remote,org.apache.camel.processor,org.springframework.jmx.export.annotation,org.apache.camel.model,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,javax.management.modelmbean,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.util'/>
    <p n='uses' v='org.apache.camel.processor.interceptor,org.apache.camel.impl,org.apache.camel.converter,org.w3c.dom,org.apache.commons.logging,org.apache.camel.converter.stream,org.apache.camel.model,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,javax.xml.bind,org.apache.camel.view'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.util.jndi'/>
    <p n='uses' v='javax.naming,org.apache.camel.spi,org.apache.camel.util,javax.naming.spi'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.impl'/>
    <p n='uses' v='javax.naming,org.apache.camel.processor.interceptor,org.apache.camel.impl.converter,org.apache.camel.management,org.apache.camel.util,org.apache.camel.converter,javax.activation,org.apache.commons.logging,javax.xml.bind.annotation,org.apache.camel.model.dataformat,org.apache.camel.processor,org.apache.camel.model,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.component.bean'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.builder.xml'/>
    <p n='uses' v='org.xml.sax,org.apache.camel.converter,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,org.apache.camel.converter.jaxp,org.apache.camel.model.language,javax.xml.parsers,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,javax.xml.transform.stream'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.list'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.impl,org.apache.camel.processor.loadbalancer'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.direct'/>
    <p n='uses' v='org.apache.camel.impl.converter,org.apache.camel,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.seda'/>
    <p n='uses' v='org.apache.camel.impl.converter,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.util.concurrent'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.ref'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.constant'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel.spi,org.apache.camel'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.file'/>
    <p n='uses' v='org.apache.camel.language.simple,org.apache.commons.logging,org.apache.camel.processor,org.apache.camel,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter'/>
    <p n='uses' v='org.apache.commons.logging,javax.xml.transform,javax.xml.transform.dom,org.apache.camel.converter.jaxp,org.apache.camel,org.apache.camel.util'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.bean'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.camel.component.bean,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model.config'/>
    <p n='uses' v='org.apache.camel.processor.resequencer,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model.dataformat'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel,org.apache.camel.spi,org.w3c.dom,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.processor.aggregate,org.apache.camel.model,org.apache.camel.processor.resequencer,org.apache.camel.processor.interceptor,org.apache.camel.impl.converter,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor.exceptionpolicy,org.apache.camel.util.concurrent'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.mock'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.processor'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.timer'/>
    <p n='uses' v='org.apache.camel,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.vm'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.component.seda'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model.language'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.language.bean,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model'/>
    <p n='uses' v='org.apache.camel.model.loadbalancer,org.apache.camel.processor.aggregate,org.apache.camel.processor.loadbalancer,org.apache.camel.processor.interceptor,org.apache.camel.processor.resequencer,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.language.constant,org.apache.commons.logging,org.apache.camel.model.config,javax.xml.bind.annotation,org.apache.camel.model.dataformat,org.apache.camel.processor,org.apache.camel.model.language,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.component.bean,org.apache.camel.processor.idempotent'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter.stream'/>
    <p n='uses' v='org.apache.camel.converter.jaxp,javax.xml.transform.sax,org.apache.camel.converter,org.apache.camel,org.apache.commons.logging,org.apache.camel.util,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.builder'/>
    <p n='uses' v='org.apache.camel.language.simple,org.apache.camel.language.bean,org.w3c.dom,org.apache.commons.logging,org.apache.camel.model.dataformat,org.apache.camel.processor,org.apache.camel.model.language,org.apache.camel.model,org.apache.camel.processor.interceptor,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.builder.xml,org.apache.camel.processor.exceptionpolicy'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.xpath'/>
    <p n='uses' v='org.apache.camel.spi,javax.xml.namespace,org.apache.camel,org.apache.camel.builder.xml'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jmx'/>
    <p n='uses' v='javax.management,org.apache.camel,javax.management.monitor,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spi'/>
    <p n='uses' v='org.apache.camel.model,javax.management,org.apache.camel,org.apache.camel.model.dataformat'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel'/>
    <p n='uses' v='org.apache.camel.builder,javax.activation,org.apache.camel.spi,org.apache.camel.util,javax.xml.bind.annotation,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.bean'/>
    <p n='uses' v='org.apache.camel.converter,org.apache.commons.logging,org.apache.camel.processor,org.apache.camel.model.language,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.language,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.builder.xml'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.component.bean'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.view'/>
    <p n='uses' v='org.w3c.dom,org.apache.commons.logging,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.dom,org.apache.camel.model.language,org.apache.camel.converter.jaxp,org.apache.camel.model,javax.xml.parsers,org.apache.camel,org.apache.camel.util,javax.xml.bind,javax.xml.transform.stream'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.validation'/>
    <p n='uses' v='javax.xml.transform.dom,org.xml.sax,javax.xml.validation,org.apache.camel,org.apache.commons.logging,javax.xml.transform'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.idempotent'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.exceptionpolicy'/>
    <p n='uses' v='org.apache.camel.model.language,org.apache.camel.model,org.apache.camel,org.apache.commons.logging'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.file.strategy'/>
    <p n='uses' v='org.apache.camel.component.file,org.apache.camel,org.apache.camel.util,org.apache.commons.logging'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.monitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.monitor
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder.xml)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder.xml ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.dataset)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.dataset ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.direct)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.direct ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file.strategy)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file.strategy ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jmx)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jmx ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.list)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.list ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.log)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.log ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mock)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mock ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.ref)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.ref ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.seda)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.seda ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.timer)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.timer ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.vm)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.vm ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.stream)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.stream ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.converter)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl.converter ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.bean)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.bean ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.constant)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.constant ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.header)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.header ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.simple)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.simple ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.xpath)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.xpath ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.management)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.management ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.config)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.config ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.dataformat)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.dataformat ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.language)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.language ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.loadbalancer)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.loadbalancer ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.aggregate)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.aggregate ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.exceptionpolicy)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.exceptionpolicy ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.idempotent)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.idempotent ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.interceptor)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.interceptor ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.loadbalancer)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.loadbalancer ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.resequencer)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.resequencer ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.validation)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.validation ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util.concurrent)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util.concurrent ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util.jndi)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util.jndi ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.view)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.view ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.xsltc.trax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xalan.xsltc.trax
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.assembler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.assembler
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.camel.camel-core/2.0.0.M3' presentationname='camel-core' symbolicname='org.apache.camel.camel-core' uri='../org/apache/camel/camel-core/2.0-M3/camel-core-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    The Core Camel POJO based router
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1084398
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-core'/>
    <p n='symbolicname' v='org.apache.camel.camel-core'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model.loadbalancer'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.spi,org.apache.camel,javax.xml.bind.annotation,org.apache.camel.processor.loadbalancer'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.simple'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.commons.logging,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.dataset'/>
    <p n='uses' v='org.apache.camel.component.mock,org.apache.camel,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.loadbalancer'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.aggregate'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.property'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel.spi,org.apache.camel'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.log'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.header'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel.spi,org.apache.camel'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter.jaxp'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.parsers,org.apache.camel,org.apache.camel.util,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.interceptor'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel,org.apache.camel.spi,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.resequencer'/>
    <p n='uses' v='org.apache.camel'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.impl.converter'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.commons.logging'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.management'/>
    <p n='uses' v='org.apache.camel.util,org.apache.camel.impl,javax.management.modelmbean,org.apache.camel.util.concurrent,javax.management,org.apache.commons.logging,org.springframework.jmx.export.assembler,javax.management.remote,org.springframework.jmx.export.metadata,org.apache.camel.processor,org.springframework.jmx.export.annotation,org.apache.camel.model,org.apache.camel,org.apache.camel.spi'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.util.jndi'/>
    <p n='uses' v='javax.naming,org.apache.camel.spi,org.apache.camel.util,javax.naming.spi'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.util'/>
    <p n='uses' v='org.apache.camel.component.file,org.w3c.dom,org.apache.commons.logging,org.apache.camel,org.apache.camel.spi'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.impl'/>
    <p n='uses' v='javax.naming,org.apache.camel.processor.interceptor,org.apache.camel.impl.converter,org.apache.camel.management,org.apache.camel.util,org.apache.camel.util.concurrent,javax.activation,org.apache.commons.logging,javax.xml.bind.annotation,org.apache.camel.impl.scan,org.apache.camel.processor,org.apache.camel.model,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.component.bean,org.apache.camel.view,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.builder.xml'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,org.apache.camel.converter.jaxp,org.apache.camel.model.language,javax.xml.parsers,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.direct'/>
    <p n='uses' v='org.apache.camel,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.tokenizer'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.util.concurrent'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.seda'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.util.concurrent'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.ref'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.constant'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel,org.apache.camel.spi'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.file'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor.idempotent'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter'/>
    <p n='uses' v='org.apache.commons.logging,javax.xml.transform,javax.xml.transform.dom,org.apache.camel.converter.jaxp,org.apache.camel,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.bean'/>
    <p n='uses' v='org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.component.bean,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model.config'/>
    <p n='uses' v='org.apache.camel.processor.resequencer,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model.dataformat'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel,org.apache.camel.spi,org.w3c.dom,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.impl.scan'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel.util,org.springframework.util'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.processor.aggregate,org.apache.camel.model,org.apache.camel.processor.resequencer,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.processor.exceptionpolicy,org.apache.camel.util.concurrent'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.vm'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.component.seda'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.timer'/>
    <p n='uses' v='org.apache.camel,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.mock'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.processor,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model.language'/>
    <p n='uses' v='org.apache.camel.language.bean,org.apache.commons.logging,javax.xml.bind.annotation,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.language.tokenizer'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.model'/>
    <p n='uses' v='org.apache.camel.model.loadbalancer,org.apache.camel.processor.aggregate,org.apache.camel.processor.loadbalancer,org.apache.camel.processor.resequencer,org.apache.camel.processor.interceptor,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.util.concurrent,org.apache.commons.logging,org.apache.camel.model.config,javax.xml.bind.annotation,org.apache.camel.model.dataformat,org.apache.camel.processor,org.apache.camel.model.language,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.component.bean,org.apache.camel.processor.idempotent'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter.stream'/>
    <p n='uses' v='org.apache.camel.converter.jaxp,javax.xml.transform.sax,org.apache.camel.converter,org.apache.camel,org.apache.commons.logging,org.apache.camel.util,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.builder'/>
    <p n='uses' v='org.apache.camel.language.bean,org.w3c.dom,org.apache.commons.logging,org.apache.camel.model.dataformat,org.apache.camel.processor,org.apache.camel.model.language,org.apache.camel.model,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.builder.xml,org.apache.camel.processor.exceptionpolicy'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.xpath'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,javax.xml.namespace,org.apache.camel.builder.xml'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spi'/>
    <p n='uses' v='org.apache.camel.model,javax.management,org.apache.camel'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,javax.activation,org.apache.camel.spi,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language'/>
    <p n='uses' v='org.apache.camel.component.bean'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.bean'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.processor,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.language,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.builder.xml'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.view'/>
    <p n='uses' v='org.w3c.dom,org.apache.commons.logging,javax.xml.bind.annotation,javax.xml.transform,javax.xml.transform.dom,org.apache.camel.model.language,org.apache.camel.converter.jaxp,org.apache.camel.model,javax.xml.parsers,org.apache.camel,org.apache.camel.util,javax.xml.bind,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.exceptionpolicy'/>
    <p n='uses' v='org.apache.camel.model.language,org.apache.camel.model,org.apache.camel,org.apache.camel.util,org.apache.commons.logging'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.file.strategy'/>
    <p n='uses' v='org.apache.camel.component.file,org.apache.camel.spi,org.apache.camel,org.apache.commons.logging,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.idempotent'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.validation'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.transform.sax,org.xml.sax,javax.xml.validation,org.apache.camel,org.apache.commons.logging,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.browse'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.camel.impl,org.apache.camel.processor.loadbalancer'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder.xml)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder.xml ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.browse)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.browse ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.dataset)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.dataset ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.direct)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.direct ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file.strategy)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file.strategy ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.log)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.log ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mock)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mock ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.ref)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.ref ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.seda)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.seda ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.timer)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.timer ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.vm)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.vm ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.stream)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.stream ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.converter)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl.converter ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.scan)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl.scan ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.bean)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.bean ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.constant)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.constant ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.header)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.header ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.property)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.property ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.simple)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.simple ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.tokenizer)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.tokenizer ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.xpath)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.xpath ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.management)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.management ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.config)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.config ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.dataformat)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.dataformat ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.language)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.language ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.loadbalancer)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.loadbalancer ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.aggregate)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.aggregate ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.exceptionpolicy)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.exceptionpolicy ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.idempotent)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.idempotent ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.interceptor)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.interceptor ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.loadbalancer)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.loadbalancer ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.resequencer)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.resequencer ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.validation)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.validation ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.spring.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util.concurrent)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util.concurrent ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util.jndi)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util.jndi ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.view)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.view ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.xsltc.trax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xalan.xsltc.trax
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jmx.export.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.assembler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jmx.export.assembler
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.jmx.export.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.camel.camel-cometd/2.0.0.M3' presentationname='camel-cometd' symbolicname='org.apache.camel.camel-cometd' uri='../org/apache/camel/camel-cometd/2.0-M3/camel-cometd-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Cometd support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    21095
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-cometd'/>
    <p n='symbolicname' v='org.apache.camel.camel-cometd'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cometd'/>
    <p n='uses' v='org.mortbay.jetty.nio,dojox.cometd,org.apache.commons.logging,org.mortbay.cometd,org.mortbay.jetty.security,org.mortbay.cometd.continuation,javax.servlet,org.apache.camel,org.mortbay.jetty.servlet,org.apache.camel.util,org.mortbay.jetty.handler,org.apache.camel.impl,org.mortbay.jetty'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=dojox.cometd)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package dojox.cometd
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cometd)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cometd ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.cometd)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.cometd
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.cometd.continuation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.cometd.continuation
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.security
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.servlet
  </require>
</resource>
<resource id='org.apache.camel.camel-cometd/2.0.0.M2' presentationname='camel-cometd' symbolicname='org.apache.camel.camel-cometd' uri='../org/apache/camel/camel-cometd/2.0-M2/camel-cometd-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Cometd support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    21107
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-cometd'/>
    <p n='symbolicname' v='org.apache.camel.camel-cometd'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cometd'/>
    <p n='uses' v='org.mortbay.jetty.nio,dojox.cometd,org.apache.commons.logging,org.mortbay.cometd,org.mortbay.jetty.security,org.mortbay.cometd.continuation,javax.servlet,org.apache.camel,org.mortbay.jetty.servlet,org.apache.camel.util,org.mortbay.jetty.handler,org.apache.camel.impl,org.mortbay.jetty'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=dojox.cometd)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package dojox.cometd
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cometd)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cometd ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.cometd)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.cometd
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.cometd.continuation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.cometd.continuation
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.security
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.servlet
  </require>
</resource>
<resource id='org.apache.camel.camel-cometd/2.0.0' presentationname='camel-cometd' symbolicname='org.apache.camel.camel-cometd' uri='../org/apache/camel/camel-cometd/2.0.0/camel-cometd-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Cometd support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26254
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-cometd'/>
    <p n='symbolicname' v='org.apache.camel.camel-cometd'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cometd'/>
    <p n='uses' v='org.mortbay.jetty.nio,dojox.cometd,org.apache.commons.logging,org.mortbay.cometd,org.mortbay.jetty.security,org.mortbay.cometd.continuation,javax.servlet,org.apache.camel,org.mortbay.jetty.servlet,org.apache.camel.util,org.mortbay.jetty.handler,org.apache.camel.impl,org.mortbay.jetty'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=dojox.cometd)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package dojox.cometd
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cometd)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cometd ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.cometd)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.cometd
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.cometd.continuation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.cometd.continuation
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.security
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.servlet
  </require>
</resource>
<resource id='org.apache.camel.camel-mvel/2.0.0.M2' presentationname='camel-mvel' symbolicname='org.apache.camel.camel-mvel' uri='../org/apache/camel/camel-mvel/2.0-M2/camel-mvel-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel MVEL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12667
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-mvel'/>
    <p n='symbolicname' v='org.apache.camel.camel-mvel'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.mvel'/>
    <p n='uses' v='org.mvel2,org.apache.camel.spi,org.apache.camel,org.apache.camel.language,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.mvel)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.mvel ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2
  </require>
</resource>
<resource id='org.apache.camel.camel-mvel/2.0.0' presentationname='camel-mvel' symbolicname='org.apache.camel.camel-mvel' uri='../org/apache/camel/camel-mvel/2.0.0/camel-mvel-2.0.0.jar' version='2.0.0'>
  <description>
    Camel MVEL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17632
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-mvel'/>
    <p n='symbolicname' v='org.apache.camel.camel-mvel'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.mvel'/>
    <p n='uses' v='org.mvel2,org.apache.camel.spi,org.apache.camel,org.apache.camel.language,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.mvel)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.mvel ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2
  </require>
</resource>
<resource id='org.apache.camel.camel-mvel/2.0.0.M3' presentationname='camel-mvel' symbolicname='org.apache.camel.camel-mvel' uri='../org/apache/camel/camel-mvel/2.0-M3/camel-mvel-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel MVEL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12666
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-mvel'/>
    <p n='symbolicname' v='org.apache.camel.camel-mvel'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.mvel'/>
    <p n='uses' v='org.mvel2,org.apache.camel.spi,org.apache.camel,org.apache.camel.language,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.mvel)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.mvel ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2
  </require>
</resource>
<resource id='org.apache.camel.camel-jing/1.6.1' presentationname='camel-jing' symbolicname='org.apache.camel.camel-jing' uri='../org/apache/camel/camel-jing/1.6.1/camel-jing-1.6.1.jar' version='1.6.1'>
  <description>
    Camel Jing support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14860
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jing'/>
    <p n='symbolicname' v='org.apache.camel.camel-jing'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.validator.jing'/>
    <p n='uses' v='org.xml.sax,com.thaiopensource.util,org.apache.commons.logging,org.apache.camel.component,javax.xml.transform,javax.xml.transform.sax,org.springframework.core.io,com.thaiopensource.validate,org.apache.camel,com.thaiopensource.xml.sax,org.apache.camel.util,com.thaiopensource.relaxng,org.apache.camel.impl,org.apache.camel.processor.validation'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.relaxng)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.relaxng
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.util
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.validate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.validate
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.validator.jing)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.validator.jing ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.camel.camel-jing/2.0.0.M2' presentationname='camel-jing' symbolicname='org.apache.camel.camel-jing' uri='../org/apache/camel/camel-jing/2.0-M2/camel-jing-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Jing support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14834
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jing'/>
    <p n='symbolicname' v='org.apache.camel.camel-jing'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.validator.jing'/>
    <p n='uses' v='org.xml.sax,com.thaiopensource.util,org.apache.commons.logging,org.apache.camel.component,javax.xml.transform,javax.xml.transform.sax,org.springframework.core.io,com.thaiopensource.validate,org.apache.camel,com.thaiopensource.xml.sax,org.apache.camel.util,com.thaiopensource.relaxng,org.apache.camel.impl,org.apache.camel.processor.validation'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.relaxng)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.relaxng
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.util
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.validate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.validate
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.validator.jing)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.validator.jing ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.camel.camel-jing/2.0.0' presentationname='camel-jing' symbolicname='org.apache.camel.camel-jing' uri='../org/apache/camel/camel-jing/2.0.0/camel-jing-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Jing support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19976
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jing'/>
    <p n='symbolicname' v='org.apache.camel.camel-jing'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.validator.jing'/>
    <p n='uses' v='org.xml.sax,com.thaiopensource.util,org.apache.commons.logging,org.apache.camel.component,javax.xml.transform,javax.xml.transform.sax,org.springframework.core.io,com.thaiopensource.validate,org.apache.camel,com.thaiopensource.xml.sax,org.apache.camel.util,com.thaiopensource.relaxng,org.apache.camel.impl,org.apache.camel.processor.validation'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.relaxng)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.relaxng
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.util
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.validate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.validate
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.validator.jing)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.validator.jing ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.camel.camel-jing/2.0.0.M3' presentationname='camel-jing' symbolicname='org.apache.camel.camel-jing' uri='../org/apache/camel/camel-jing/2.0-M3/camel-jing-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Jing support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14835
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jing'/>
    <p n='symbolicname' v='org.apache.camel.camel-jing'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.validator.jing'/>
    <p n='uses' v='org.xml.sax,com.thaiopensource.util,org.apache.commons.logging,org.apache.camel.component,javax.xml.transform,javax.xml.transform.sax,org.springframework.core.io,com.thaiopensource.validate,org.apache.camel,com.thaiopensource.xml.sax,org.apache.camel.util,com.thaiopensource.relaxng,org.apache.camel.impl,org.apache.camel.processor.validation'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.relaxng)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.relaxng
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.util
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.validate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.validate
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.validator.jing)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.validator.jing ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.camel.camel-jdbc/2.0.0.M2' presentationname='camel-jdbc' symbolicname='org.apache.camel.camel-jdbc' uri='../org/apache/camel/camel-jdbc/2.0-M2/camel-jdbc-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel JDBC support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13897
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jdbc'/>
    <p n='symbolicname' v='org.apache.camel.camel-jdbc'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jdbc'/>
    <p n='uses' v='org.apache.camel,org.apache.commons.logging,org.apache.camel.impl,javax.sql'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jdbc)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jdbc ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-jdbc/2.0.0' presentationname='camel-jdbc' symbolicname='org.apache.camel.camel-jdbc' uri='../org/apache/camel/camel-jdbc/2.0.0/camel-jdbc-2.0.0.jar' version='2.0.0'>
  <description>
    Camel JDBC support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18847
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jdbc'/>
    <p n='symbolicname' v='org.apache.camel.camel-jdbc'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jdbc'/>
    <p n='uses' v='org.apache.camel,org.apache.commons.logging,org.apache.camel.impl,javax.sql'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jdbc)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jdbc ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-jdbc/1.6.1' presentationname='camel-jdbc' symbolicname='org.apache.camel.camel-jdbc' uri='../org/apache/camel/camel-jdbc/1.6.1/camel-jdbc-1.6.1.jar' version='1.6.1'>
  <description>
    Camel JDBC support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13694
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jdbc'/>
    <p n='symbolicname' v='org.apache.camel.camel-jdbc'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jdbc'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,javax.sql'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jdbc)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jdbc ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-jdbc/2.0.0.M3' presentationname='camel-jdbc' symbolicname='org.apache.camel.camel-jdbc' uri='../org/apache/camel/camel-jdbc/2.0-M3/camel-jdbc-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel JDBC support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13892
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jdbc'/>
    <p n='symbolicname' v='org.apache.camel.camel-jdbc'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jdbc'/>
    <p n='uses' v='org.apache.camel,org.apache.commons.logging,org.apache.camel.impl,javax.sql'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jdbc)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jdbc ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-spring-integration/2.0.0.M2' presentationname='camel-spring-integration' symbolicname='org.apache.camel.camel-spring-integration' uri='../org/apache/camel/camel-spring-integration/2.0-M2/camel-spring-integration-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Spring Integration support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    37800
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-spring-integration'/>
    <p n='symbolicname' v='org.apache.camel.camel-spring-integration'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.spring.integration.adapter'/>
    <p n='uses' v='org.springframework.integration.core,org.apache.camel,org.apache.camel.component.spring.integration,org.apache.commons.logging,org.apache.camel.impl,org.springframework.beans.factory,org.springframework.integration.channel,org.springframework.integration.message'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.spring.integration.converter'/>
    <p n='uses' v='org.springframework.integration.core,org.apache.camel,org.apache.camel.component.spring.integration,org.springframework.integration.message'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.spring.integration.adapter.config'/>
    <p n='uses' v='org.apache.camel.component.spring.integration.adapter,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.w3c.dom,org.springframework.beans,org.apache.camel.util,org.springframework.util'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.spring.integration'/>
    <p n='uses' v='org.apache.camel.component.spring.integration.adapter,org.apache.commons.logging,org.springframework.context,org.springframework.integration.channel,org.springframework.integration.core,org.apache.camel,org.apache.camel.util,org.apache.camel.spring,org.apache.camel.impl,org.springframework.beans.factory,org.springframework.integration.message'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.spring.integration)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.spring.integration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.spring.integration.adapter)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.spring.integration.adapter
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.spring.integration.adapter.config)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.spring.integration.adapter.config
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.spring.integration.converter)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.spring.integration.converter
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.integration.channel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.integration.channel
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.integration.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.integration.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.integration.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.integration.message
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-spring-integration/1.6.1' presentationname='camel-spring-integration' symbolicname='org.apache.camel.camel-spring-integration' uri='../org/apache/camel/camel-spring-integration/1.6.1/camel-spring-integration-1.6.1.jar' version='1.6.1'>
  <description>
    Camel Spring Integration support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    38387
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-spring-integration'/>
    <p n='symbolicname' v='org.apache.camel.camel-spring-integration'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.spring.integration.adapter'/>
    <p n='uses' v='org.springframework.integration.core,org.apache.camel,org.apache.camel.component.spring.integration,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,org.springframework.beans.factory,org.springframework.integration.channel,org.springframework.integration.message'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.spring.integration.converter'/>
    <p n='uses' v='org.springframework.integration.core,org.apache.camel,org.apache.camel.component.spring.integration,org.springframework.integration.message'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.spring.integration.adapter.config'/>
    <p n='uses' v='org.apache.camel.component.spring.integration.adapter,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.w3c.dom,org.springframework.beans,org.apache.camel.util,org.springframework.util'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.spring.integration'/>
    <p n='uses' v='org.apache.commons.logging,org.springframework.context,org.springframework.integration.channel,org.springframework.integration.core,org.apache.camel,org.apache.camel.spring,org.apache.camel.util,org.apache.camel.impl,org.springframework.beans.factory,org.springframework.integration.message'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.spring.integration)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.spring.integration
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.spring.integration.adapter)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.spring.integration.adapter
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.spring.integration.adapter.config)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.spring.integration.adapter.config
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.spring.integration.converter)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.spring.integration.converter
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.integration.channel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.integration.channel
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.integration.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.integration.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.integration.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.integration.message
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-spring-integration/2.0.0.M3' presentationname='camel-spring-integration' symbolicname='org.apache.camel.camel-spring-integration' uri='../org/apache/camel/camel-spring-integration/2.0-M3/camel-spring-integration-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Spring Integration support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    36723
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-spring-integration'/>
    <p n='symbolicname' v='org.apache.camel.camel-spring-integration'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.spring.integration.adapter'/>
    <p n='uses' v='org.springframework.integration.core,org.apache.camel,org.apache.camel.component.spring.integration,org.apache.commons.logging,org.apache.camel.impl,org.springframework.beans.factory,org.springframework.integration.channel,org.springframework.integration.message'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.spring.integration.converter'/>
    <p n='uses' v='org.springframework.integration.core,org.apache.camel,org.apache.camel.component.spring.integration,org.springframework.integration.message'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.spring.integration.adapter.config'/>
    <p n='uses' v='org.apache.camel.component.spring.integration.adapter,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.w3c.dom,org.springframework.beans,org.apache.camel.util,org.springframework.util'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.spring.integration'/>
    <p n='uses' v='org.apache.commons.logging,org.springframework.context,org.springframework.integration.channel,org.springframework.integration.core,org.apache.camel,org.apache.camel.util,org.apache.camel.spring,org.apache.camel.impl,org.springframework.beans.factory,org.springframework.integration.message'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.spring.integration)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.spring.integration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.spring.integration.adapter)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.spring.integration.adapter
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.spring.integration.adapter.config)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.spring.integration.adapter.config
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.spring.integration.converter)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.spring.integration.converter
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.integration.channel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.integration.channel
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.integration.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.integration.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.integration.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.integration.message
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-spring-integration/2.0.0' presentationname='camel-spring-integration' symbolicname='org.apache.camel.camel-spring-integration' uri='../org/apache/camel/camel-spring-integration/2.0.0/camel-spring-integration-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Spring Integration support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    41749
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-spring-integration'/>
    <p n='symbolicname' v='org.apache.camel.camel-spring-integration'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.spring.integration.adapter'/>
    <p n='uses' v='org.springframework.integration.core,org.apache.camel,org.apache.camel.component.spring.integration,org.apache.commons.logging,org.apache.camel.impl,org.springframework.beans.factory,org.springframework.integration.channel,org.springframework.integration.message'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.spring.integration.converter'/>
    <p n='uses' v='org.springframework.integration.core,org.apache.camel,org.apache.camel.component.spring.integration,org.springframework.integration.message'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.spring.integration.adapter.config'/>
    <p n='uses' v='org.apache.camel.component.spring.integration.adapter,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.w3c.dom,org.springframework.beans,org.apache.camel.util,org.springframework.util'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.spring.integration'/>
    <p n='uses' v='org.apache.commons.logging,org.springframework.context,org.springframework.integration.channel,org.springframework.integration.core,org.apache.camel,org.apache.camel.util,org.apache.camel.spring,org.apache.camel.impl,org.springframework.beans.factory,org.springframework.integration.message'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.spring.integration)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.spring.integration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.spring.integration.adapter)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.spring.integration.adapter
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.spring.integration.adapter.config)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.spring.integration.adapter.config
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.spring.integration.converter)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.spring.integration.converter
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.integration.channel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.integration.channel
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.integration.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.integration.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.integration.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.integration.message
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-xmlbeans/2.0.0.M2' presentationname='camel-xmlbeans' symbolicname='org.apache.camel.camel-xmlbeans' uri='../org/apache/camel/camel-xmlbeans/2.0-M2/camel-xmlbeans-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel XMLBeans support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11273
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-xmlbeans'/>
    <p n='symbolicname' v='org.apache.camel.camel-xmlbeans'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.xml.sax,org.apache.camel.converter,org.w3c.dom,org.apache.xmlbeans.impl.piccolo.xml,javax.xml.transform,org.apache.camel.converter.jaxp,org.apache.camel,javax.xml.parsers,org.apache.camel.spi,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.xmlbeans)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.xmlbeans ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.piccolo.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.piccolo.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.camel.camel-xmlbeans/1.6.1' presentationname='camel-xmlbeans' symbolicname='org.apache.camel.camel-xmlbeans' uri='../org/apache/camel/camel-xmlbeans/1.6.1/camel-xmlbeans-1.6.1.jar' version='1.6.1'>
  <description>
    Camel XMLBeans support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11282
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-xmlbeans'/>
    <p n='symbolicname' v='org.apache.camel.camel-xmlbeans'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.xml.sax,org.apache.camel.converter,org.w3c.dom,org.apache.xmlbeans.impl.piccolo.xml,javax.xml.transform,org.apache.camel.converter.jaxp,org.apache.camel,javax.xml.parsers,org.apache.camel.spi,org.apache.camel.util'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.xmlbeans)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.xmlbeans ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.piccolo.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.piccolo.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.camel.camel-xmlbeans/2.0.0.M3' presentationname='camel-xmlbeans' symbolicname='org.apache.camel.camel-xmlbeans' uri='../org/apache/camel/camel-xmlbeans/2.0-M3/camel-xmlbeans-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel XMLBeans support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11257
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-xmlbeans'/>
    <p n='symbolicname' v='org.apache.camel.camel-xmlbeans'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.xml.sax,org.apache.camel.converter,org.w3c.dom,org.apache.xmlbeans.impl.piccolo.xml,javax.xml.transform,org.apache.camel.converter.jaxp,org.apache.camel,javax.xml.parsers,org.apache.camel.spi,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.xmlbeans)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.xmlbeans ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.piccolo.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.piccolo.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.camel.camel-xmlbeans/2.0.0' presentationname='camel-xmlbeans' symbolicname='org.apache.camel.camel-xmlbeans' uri='../org/apache/camel/camel-xmlbeans/2.0.0/camel-xmlbeans-2.0.0.jar' version='2.0.0'>
  <description>
    Camel XMLBeans support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16289
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-xmlbeans'/>
    <p n='symbolicname' v='org.apache.camel.camel-xmlbeans'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.xml.sax,org.apache.camel.converter,org.w3c.dom,org.apache.xmlbeans.impl.piccolo.xml,javax.xml.transform,org.apache.camel.converter.jaxp,org.apache.camel,javax.xml.parsers,org.apache.camel.spi,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.xmlbeans)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.xmlbeans ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.piccolo.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.piccolo.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.camel.camel-spring/2.0.0' presentationname='camel-spring' symbolicname='org.apache.camel.camel-spring' uri='../org/apache/camel/camel-spring/2.0.0/camel-spring-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Spring support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    114930
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-spring'/>
    <p n='symbolicname' v='org.apache.camel.camel-spring'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.test'/>
    <p n='uses' v='org.apache.camel.component.mock,org.apache.camel,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.validator'/>
    <p n='uses' v='org.springframework.core.io,org.apache.camel,org.apache.commons.logging,org.apache.camel.impl,javax.xml.transform.stream,org.apache.camel.processor.validation,org.apache.camel.component,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.spi'/>
    <p n='uses' v='org.apache.commons.logging,org.springframework.context,org.aopalliance.intercept,org.apache.camel.processor,org.springframework.transaction,org.apache.camel.model,org.springframework.beans.factory.config,org.apache.camel.builder,org.springframework.core.io,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.camel.component.bean,org.apache.camel.processor.exceptionpolicy,org.springframework.beans.factory,org.springframework.transaction.support'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.handler'/>
    <p n='uses' v='org.springframework.util.xml,org.apache.camel.model.loadbalancer,org.springframework.beans.factory.parsing,org.apache.camel.util,org.apache.camel.spring.remoting,org.springframework.beans.factory,org.apache.camel.builder.xml,org.springframework.core,org.w3c.dom,org.apache.camel.model.config,org.apache.commons.logging,org.apache.camel.model.dataformat,org.springframework.beans.factory.support,org.apache.camel.model.language,org.apache.camel.model,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.camel.spi,org.apache.camel,org.springframework.beans,org.apache.camel.spring,org.springframework.util,org.apache.camel.view,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.event'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.springframework.beans,org.apache.camel.impl,org.springframework.context,org.apache.camel.processor.loadbalancer'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring'/>
    <p n='uses' v='org.apache.camel.spring.spi,org.apache.camel.component.event,org.springframework.context.support,org.apache.camel.spring.util,org.apache.camel.processor.interceptor,org.apache.camel.management,org.apache.camel.util,org.apache.camel.impl,org.springframework.beans.factory,org.springframework.transaction.support,org.springframework.context.event,org.apache.camel.spring.handler,org.apache.commons.logging,org.apache.camel.model.config,javax.xml.bind.annotation,org.springframework.context,org.apache.camel.model.dataformat,org.apache.camel.impl.scan,org.springframework.transaction,org.apache.camel.model,org.springframework.beans.factory.config,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.component.bean,org.springframework.beans,org.apache.camel.view,javax.xml.bind,org.springframework.util'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.remoting'/>
    <p n='uses' v='org.springframework.remoting.support,org.apache.camel,org.apache.camel.util,org.springframework.beans,org.apache.camel.component.bean,org.springframework.context,org.springframework.beans.factory,org.aopalliance.intercept'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.util'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.util,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.xslt'/>
    <p n='uses' v='org.apache.camel.converter.jaxp,org.springframework.core.io,org.apache.camel,org.apache.camel.spi,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.builder.xml,org.apache.camel.component,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component'/>
    <p n='uses' v='org.springframework.core.io,org.apache.camel.converter,org.apache.camel,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.intercept)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.intercept
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.event)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.event ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mock
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.test)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.test ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.validator)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.validator ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.xslt)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.xslt ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.scan)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl.scan
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.management
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.dataformat)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.dataformat
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.exceptionpolicy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.exceptionpolicy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.handler)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.handler ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.remoting)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.remoting ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.spi)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.spi ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.util)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.util ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.view)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.view
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.parsing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.parsing
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.remoting.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.remoting.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-spring/2.0.0.M2' presentationname='camel-spring' symbolicname='org.apache.camel.camel-spring' uri='../org/apache/camel/camel-spring/2.0-M2/camel-spring-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Spring support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    107512
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-spring'/>
    <p n='symbolicname' v='org.apache.camel.camel-spring'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.test'/>
    <p n='uses' v='org.apache.camel.component.mock,org.apache.camel,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.validator'/>
    <p n='uses' v='org.springframework.core.io,org.apache.camel,org.apache.commons.logging,org.apache.camel.impl,javax.xml.transform.stream,org.apache.camel.processor.validation,org.apache.camel.component,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.spi'/>
    <p n='uses' v='org.apache.commons.logging,org.springframework.context,org.aopalliance.intercept,org.apache.camel.processor,org.springframework.transaction,org.apache.camel.model,org.springframework.beans.factory.config,org.apache.camel.builder,org.springframework.core.io,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.camel.component.bean,org.apache.camel.processor.exceptionpolicy,org.springframework.beans.factory,org.springframework.transaction.support'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.handler'/>
    <p n='uses' v='org.springframework.util.xml,org.apache.camel.model.loadbalancer,org.springframework.beans.factory.parsing,org.apache.camel.util,org.apache.camel.spring.remoting,org.apache.camel.builder.xml,org.springframework.beans.factory,org.springframework.core,org.w3c.dom,org.apache.camel.model.config,org.apache.camel.model.dataformat,org.springframework.beans.factory.support,org.apache.camel.model.language,org.apache.camel.model,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.camel.spi,org.apache.camel,org.apache.camel.spring,org.springframework.beans,org.springframework.util,org.apache.camel.view,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.event'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.springframework.beans,org.apache.camel.impl,org.springframework.context,org.apache.camel.processor.loadbalancer'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring'/>
    <p n='uses' v='org.apache.camel.spring.spi,org.apache.camel.component.event,org.springframework.context.support,org.apache.camel.spring.util,org.apache.camel.processor.interceptor,org.apache.camel.management,org.apache.camel.util,org.apache.camel.impl,org.springframework.beans.factory,org.springframework.transaction.support,org.springframework.context.event,org.apache.camel.spring.handler,org.apache.commons.logging,org.apache.camel.model.config,javax.xml.bind.annotation,org.springframework.context,org.apache.camel.model.dataformat,org.springframework.transaction,org.apache.camel.model,org.springframework.beans.factory.config,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.component.bean,org.springframework.beans,org.apache.camel.view,org.springframework.util,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.remoting'/>
    <p n='uses' v='org.springframework.remoting.support,org.apache.camel,org.apache.camel.util,org.springframework.beans,org.apache.camel.component.bean,org.springframework.context,org.springframework.beans.factory,org.aopalliance.intercept'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.util'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.model,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.xslt'/>
    <p n='uses' v='org.apache.camel.converter.jaxp,org.springframework.core.io,org.apache.camel,org.apache.camel.spi,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.builder.xml,org.apache.camel.component,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component'/>
    <p n='uses' v='org.springframework.core.io,org.apache.camel.converter,org.apache.camel,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.intercept)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.intercept
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.event)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.event ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mock
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.test)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.test ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.validator)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.validator ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.xslt)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.xslt ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.management
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.dataformat)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.dataformat
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.exceptionpolicy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.exceptionpolicy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.handler)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.handler ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.remoting)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.remoting ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.spi)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.spi ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.util)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.util ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.view)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.view
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.parsing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.parsing
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.remoting.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.remoting.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-spring/2.0.0.M3' presentationname='camel-spring' symbolicname='org.apache.camel.camel-spring' uri='../org/apache/camel/camel-spring/2.0-M3/camel-spring-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Spring support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    110353
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-spring'/>
    <p n='symbolicname' v='org.apache.camel.camel-spring'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.test'/>
    <p n='uses' v='org.apache.camel.component.mock,org.apache.camel,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.validator'/>
    <p n='uses' v='org.springframework.core.io,org.apache.camel,org.apache.commons.logging,org.apache.camel.impl,javax.xml.transform.stream,org.apache.camel.processor.validation,org.apache.camel.component,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.spi'/>
    <p n='uses' v='org.apache.commons.logging,org.springframework.context,org.aopalliance.intercept,org.apache.camel.processor,org.springframework.transaction,org.apache.camel.model,org.springframework.beans.factory.config,org.apache.camel.builder,org.springframework.core.io,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.camel.component.bean,org.apache.camel.processor.exceptionpolicy,org.springframework.beans.factory,org.springframework.transaction.support'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.handler'/>
    <p n='uses' v='org.springframework.util.xml,org.apache.camel.model.loadbalancer,org.springframework.beans.factory.parsing,org.apache.camel.util,org.apache.camel.spring.remoting,org.springframework.beans.factory,org.apache.camel.builder.xml,org.springframework.core,org.w3c.dom,org.apache.camel.model.config,org.apache.commons.logging,org.apache.camel.model.dataformat,org.springframework.beans.factory.support,org.apache.camel.model.language,org.apache.camel.model,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.camel,org.apache.camel.spi,org.apache.camel.spring,org.springframework.beans,org.springframework.util,org.apache.camel.view,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.event'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.springframework.beans,org.apache.camel.impl,org.springframework.context,org.apache.camel.processor.loadbalancer'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring'/>
    <p n='uses' v='org.apache.camel.spring.spi,org.apache.camel.component.event,org.springframework.context.support,org.apache.camel.spring.util,org.apache.camel.processor.interceptor,org.apache.camel.management,org.apache.camel.util,org.apache.camel.impl,org.springframework.beans.factory,org.springframework.transaction.support,org.springframework.context.event,org.apache.camel.spring.handler,org.apache.commons.logging,org.apache.camel.model.config,javax.xml.bind.annotation,org.springframework.context,org.apache.camel.model.dataformat,org.apache.camel.impl.scan,org.springframework.transaction,org.apache.camel.model,org.springframework.beans.factory.config,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.component.bean,org.springframework.beans,org.apache.camel.view,javax.xml.bind,org.springframework.util'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.remoting'/>
    <p n='uses' v='org.springframework.remoting.support,org.apache.camel,org.apache.camel.util,org.springframework.beans,org.apache.camel.component.bean,org.springframework.context,org.springframework.beans.factory,org.aopalliance.intercept'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.util'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.model,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.xslt'/>
    <p n='uses' v='org.apache.camel.converter.jaxp,org.springframework.core.io,org.apache.camel,org.apache.camel.spi,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.builder.xml,org.apache.camel.component,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component'/>
    <p n='uses' v='org.springframework.core.io,org.apache.camel.converter,org.apache.camel,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.intercept)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.intercept
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.event)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.event ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mock
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.test)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.test ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.validator)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.validator ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.xslt)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.xslt ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.scan)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl.scan
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.management
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.dataformat)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.dataformat
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.exceptionpolicy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.exceptionpolicy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.handler)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.handler ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.remoting)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.remoting ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.spi)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.spi ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.util)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.util ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.view)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.view
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.parsing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.parsing
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.remoting.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.remoting.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-spring/1.6.1' presentationname='camel-spring' symbolicname='org.apache.camel.camel-spring' uri='../org/apache/camel/camel-spring/1.6.1/camel-spring-1.6.1.jar' version='1.6.1'>
  <description>
    Camel Spring support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    104183
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-spring'/>
    <p n='symbolicname' v='org.apache.camel.camel-spring'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.test'/>
    <p n='uses' v='org.apache.camel.component.mock,org.apache.camel,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.factory'/>
    <p n='uses' v='org.apache.camel.component.bean,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.validator'/>
    <p n='uses' v='org.springframework.core.io,org.apache.camel,org.apache.commons.logging,org.apache.camel.impl,javax.xml.transform.stream,org.apache.camel.processor.validation,org.apache.camel.component,javax.xml.transform'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.spi'/>
    <p n='uses' v='org.apache.commons.logging,org.springframework.context,org.aopalliance.intercept,org.apache.camel.processor,org.springframework.transaction,org.springframework.beans.factory.config,org.apache.camel.builder,org.springframework.core.io,org.springframework.beans.factory.wiring,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.camel.component.bean,org.springframework.beans.factory,org.springframework.transaction.support'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.handler'/>
    <p n='uses' v='org.springframework.util.xml,org.apache.camel.model.loadbalancer,org.springframework.beans.factory.parsing,org.apache.camel.util,org.apache.camel.spring.remoting,org.apache.camel.builder.xml,org.springframework.beans.factory,org.springframework.core,org.w3c.dom,org.apache.camel.model.config,org.apache.camel.model.dataformat,org.springframework.beans.factory.support,org.apache.camel.model.language,org.apache.camel.model,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.camel,org.apache.camel.spi,org.springframework.beans,org.apache.camel.spring,org.springframework.util,org.apache.camel.view,javax.xml.bind'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.event'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.springframework.beans,org.apache.camel.impl,org.springframework.context,org.apache.camel.processor.loadbalancer'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring'/>
    <p n='uses' v='org.apache.camel.spring.spi,org.apache.camel.component.event,org.springframework.context.support,org.apache.camel.spring.util,org.apache.camel.processor.interceptor,org.apache.camel.management,org.apache.camel.util,org.apache.camel.impl,org.springframework.beans.factory,org.springframework.transaction.support,org.springframework.context.event,org.apache.camel.spring.handler,org.apache.commons.logging,org.apache.camel.model.config,javax.xml.bind.annotation,org.springframework.context,org.apache.camel.model.dataformat,org.apache.camel.model,org.springframework.beans.factory.config,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.component.bean,org.springframework.beans,org.apache.camel.view,org.springframework.util,javax.xml.bind'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.remoting'/>
    <p n='uses' v='org.springframework.remoting.support,org.apache.camel,org.apache.camel.util,org.springframework.beans,org.apache.camel.component.bean,org.springframework.context,org.springframework.beans.factory,org.aopalliance.intercept'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.spring.util'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.apache.commons.logging,org.apache.camel.util,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.xslt'/>
    <p n='uses' v='org.apache.camel.converter.jaxp,org.springframework.core.io,org.apache.camel,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.builder.xml,org.apache.camel.component,javax.xml.transform'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component'/>
    <p n='uses' v='org.springframework.core.io,org.apache.camel.converter,org.apache.camel,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.intercept)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.intercept
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.event)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.event ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mock
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.test)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.test ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.validator)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.validator ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.xslt)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.xslt ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.management
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.dataformat)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.dataformat
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.factory)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.factory ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.handler)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.handler ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.remoting)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.remoting ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.spi)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.spi ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.util)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.util ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.view)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.view
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.parsing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.parsing
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.wiring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.event
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.remoting.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.remoting.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-rss/2.0.0' presentationname='camel-rss' symbolicname='org.apache.camel.camel-rss' uri='../org/apache/camel/camel-rss/2.0.0/camel-rss-2.0.0.jar' version='2.0.0'>
  <description>
    Camel RSS support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    27591
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-rss'/>
    <p n='symbolicname' v='org.apache.camel.camel-rss'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.rss'/>
    <p n='uses' v='com.sun.syndication.io,org.apache.camel.spi,com.sun.syndication.feed.synd,org.apache.camel,org.apache.commons.logging,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.rss'/>
    <p n='uses' v='com.sun.syndication.io,org.apache.camel,com.sun.syndication.feed.synd,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.component.feed,org.apache.camel.impl,org.apache.camel.processor.aggregate'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.syndication.feed.synd)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.syndication.feed.synd
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.syndication.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.syndication.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.feed)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.feed
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.rss)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.rss ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.rss)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.rss ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.aggregate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.aggregate
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-rss/2.0.0.M2' presentationname='camel-rss' symbolicname='org.apache.camel.camel-rss' uri='../org/apache/camel/camel-rss/2.0-M2/camel-rss-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel RSS support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22095
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-rss'/>
    <p n='symbolicname' v='org.apache.camel.camel-rss'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.rss'/>
    <p n='uses' v='com.sun.syndication.io,org.apache.camel.spi,com.sun.syndication.feed.synd,org.apache.camel,org.apache.commons.logging,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.rss'/>
    <p n='uses' v='com.sun.syndication.io,org.apache.camel,com.sun.syndication.feed.synd,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.component.feed,org.apache.camel.impl,org.apache.camel.processor.aggregate'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.syndication.feed.synd)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.syndication.feed.synd
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.syndication.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.syndication.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.feed)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.feed
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.rss)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.rss ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.rss)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.rss ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.aggregate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.aggregate
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-rss/2.0.0.M3' presentationname='camel-rss' symbolicname='org.apache.camel.camel-rss' uri='../org/apache/camel/camel-rss/2.0-M3/camel-rss-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel RSS support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22085
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-rss'/>
    <p n='symbolicname' v='org.apache.camel.camel-rss'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.rss'/>
    <p n='uses' v='com.sun.syndication.io,org.apache.camel.spi,com.sun.syndication.feed.synd,org.apache.camel,org.apache.commons.logging,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.rss'/>
    <p n='uses' v='com.sun.syndication.io,org.apache.camel,com.sun.syndication.feed.synd,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.component.feed,org.apache.camel.impl,org.apache.camel.processor.aggregate'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.syndication.feed.synd)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.syndication.feed.synd
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.syndication.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.syndication.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.feed)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.feed
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.rss)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.rss ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.rss)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.rss ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.aggregate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.aggregate
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-example-spring-javaconfig/2.0.0.M3' presentationname='camel-example-spring-javaconfig' symbolicname='org.apache.camel.camel-example-spring-javaconfig' uri='../org/apache/camel/camel-example-spring-javaconfig/2.0-M3/camel-example-spring-javaconfig-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    An example showing how to work with Camel and Spring Java Config
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11838
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-example-spring-javaconfig'/>
    <p n='symbolicname' v='org.apache.camel.camel-example-spring-javaconfig'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.example.spring.javaconfig'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.springframework.config.java.annotation,org.apache.camel,org.apache.camel.component.jms,org.apache.camel.spring.javaconfig,org.apache.activemq,javax.jms'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.example.spring.javaconfig)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.example.spring.javaconfig ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.javaconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.javaconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.config.java.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.config.java.annotation
  </require>
</resource>
<resource id='org.apache.camel.camel-example-spring-javaconfig/2.0.0' presentationname='camel-example-spring-javaconfig' symbolicname='org.apache.camel.camel-example-spring-javaconfig' uri='../org/apache/camel/camel-example-spring-javaconfig/2.0.0/camel-example-spring-javaconfig-2.0.0.jar' version='2.0.0'>
  <description>
    An example showing how to work with Camel and Spring Java Config
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17573
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-example-spring-javaconfig'/>
    <p n='symbolicname' v='org.apache.camel.camel-example-spring-javaconfig'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.example.spring.javaconfig'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.springframework.config.java.annotation,org.apache.camel,org.apache.camel.component.jms,org.apache.camel.spring.javaconfig,org.apache.activemq,javax.jms'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.example.spring.javaconfig)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.example.spring.javaconfig ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.javaconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.javaconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.config.java.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.config.java.annotation
  </require>
</resource>
<resource id='org.apache.camel.camel-example-spring-javaconfig/2.0.0.M2' presentationname='camel-example-spring-javaconfig' symbolicname='org.apache.camel.camel-example-spring-javaconfig' uri='../org/apache/camel/camel-example-spring-javaconfig/2.0-M2/camel-example-spring-javaconfig-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    An example showing how to work with Camel and Spring Java Config
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11835
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-example-spring-javaconfig'/>
    <p n='symbolicname' v='org.apache.camel.camel-example-spring-javaconfig'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.example.spring.javaconfig'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.springframework.config.java.annotation,org.apache.camel,org.apache.camel.component.jms,org.apache.camel.spring.javaconfig,org.apache.activemq,javax.jms'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.example.spring.javaconfig)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.example.spring.javaconfig ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.javaconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.javaconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.config.java.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.config.java.annotation
  </require>
</resource>
<resource id='org.apache.camel.camel-freemarker/2.0.0.M2' presentationname='camel-freemarker' symbolicname='org.apache.camel.camel-freemarker' uri='../org/apache/camel/camel-freemarker/2.0-M2/camel-freemarker-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Freemarker support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13719
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-freemarker'/>
    <p n='symbolicname' v='org.apache.camel.camel-freemarker'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.freemarker'/>
    <p n='uses' v='freemarker.template,org.springframework.core.io,freemarker.cache,org.apache.camel,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.component'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=freemarker.cache)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.cache
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.template)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.template
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.freemarker)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.freemarker ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-freemarker/2.0.0' presentationname='camel-freemarker' symbolicname='org.apache.camel.camel-freemarker' uri='../org/apache/camel/camel-freemarker/2.0.0/camel-freemarker-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Freemarker support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18918
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-freemarker'/>
    <p n='symbolicname' v='org.apache.camel.camel-freemarker'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.freemarker'/>
    <p n='uses' v='freemarker.template,org.springframework.core.io,freemarker.cache,org.apache.camel,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.component'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=freemarker.cache)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.cache
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.template)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.template
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.freemarker)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.freemarker ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-freemarker/2.0.0.M3' presentationname='camel-freemarker' symbolicname='org.apache.camel.camel-freemarker' uri='../org/apache/camel/camel-freemarker/2.0-M3/camel-freemarker-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Freemarker support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13713
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-freemarker'/>
    <p n='symbolicname' v='org.apache.camel.camel-freemarker'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.freemarker'/>
    <p n='uses' v='freemarker.template,org.springframework.core.io,freemarker.cache,org.apache.camel,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.component'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=freemarker.cache)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.cache
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.template)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.template
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.freemarker)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.freemarker ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-freemarker/1.6.1' presentationname='camel-freemarker' symbolicname='org.apache.camel.camel-freemarker' uri='../org/apache/camel/camel-freemarker/1.6.1/camel-freemarker-1.6.1.jar' version='1.6.1'>
  <description>
    Camel Freemarker support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13139
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-freemarker'/>
    <p n='symbolicname' v='org.apache.camel.camel-freemarker'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.freemarker'/>
    <p n='uses' v='freemarker.template,org.springframework.core.io,freemarker.cache,org.apache.camel,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.component'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=freemarker.cache)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.cache
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.template)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.template
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.freemarker)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.freemarker ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-tagsoup/1.6.1' presentationname='camel-tagsoup' symbolicname='org.apache.camel.camel-tagsoup' uri='../org/apache/camel/camel-tagsoup/1.6.1/camel-tagsoup-1.6.1.jar' version='1.6.1'>
  <description>
    Camel TagSoup support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11274
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-tagsoup'/>
    <p n='symbolicname' v='org.apache.camel.camel-tagsoup'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.tagsoup'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.ccil.cowan.tagsoup,org.apache.commons.logging,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.camel.spi,org.apache.camel,org.apache.camel.util'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.tagsoup)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.tagsoup ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.ccil.cowan.tagsoup)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ccil.cowan.tagsoup
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.camel.camel-tagsoup/2.0.0.M3' presentationname='camel-tagsoup' symbolicname='org.apache.camel.camel-tagsoup' uri='../org/apache/camel/camel-tagsoup/2.0-M3/camel-tagsoup-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel TagSoup support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11718
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-tagsoup'/>
    <p n='symbolicname' v='org.apache.camel.camel-tagsoup'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.tagsoup'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.ccil.cowan.tagsoup,org.apache.commons.logging,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.camel.spi,org.apache.camel,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.tagsoup)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.tagsoup ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.ccil.cowan.tagsoup)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ccil.cowan.tagsoup
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.camel.camel-tagsoup/2.0.0' presentationname='camel-tagsoup' symbolicname='org.apache.camel.camel-tagsoup' uri='../org/apache/camel/camel-tagsoup/2.0.0/camel-tagsoup-2.0.0.jar' version='2.0.0'>
  <description>
    Camel TagSoup support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16730
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-tagsoup'/>
    <p n='symbolicname' v='org.apache.camel.camel-tagsoup'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.tagsoup'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.ccil.cowan.tagsoup,org.apache.commons.logging,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.camel.spi,org.apache.camel,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.tagsoup)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.tagsoup ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.ccil.cowan.tagsoup)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ccil.cowan.tagsoup
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.camel.camel-tagsoup/2.0.0.M2' presentationname='camel-tagsoup' symbolicname='org.apache.camel.camel-tagsoup' uri='../org/apache/camel/camel-tagsoup/2.0-M2/camel-tagsoup-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel TagSoup support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11277
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-tagsoup'/>
    <p n='symbolicname' v='org.apache.camel.camel-tagsoup'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.tagsoup'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.ccil.cowan.tagsoup,org.apache.commons.logging,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.camel.spi,org.apache.camel,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.tagsoup)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.tagsoup ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.ccil.cowan.tagsoup)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ccil.cowan.tagsoup
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.camel.camel-juel/2.0.0' presentationname='camel-juel' symbolicname='org.apache.camel.camel-juel' uri='../org/apache/camel/camel-juel/2.0.0/camel-juel-2.0.0.jar' version='2.0.0'>
  <description>
    Camel JUEL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19606
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-juel'/>
    <p n='symbolicname' v='org.apache.camel.camel-juel'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.juel'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,de.odysseus.el.util,org.apache.camel.language,org.apache.camel.impl,javax.el'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=de.odysseus.el.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package de.odysseus.el.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.el)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.el
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.juel)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.juel ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
</resource>
<resource id='org.apache.camel.camel-juel/2.0.0.M3' presentationname='camel-juel' symbolicname='org.apache.camel.camel-juel' uri='../org/apache/camel/camel-juel/2.0-M3/camel-juel-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel JUEL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14557
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-juel'/>
    <p n='symbolicname' v='org.apache.camel.camel-juel'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.juel'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,de.odysseus.el.util,org.apache.camel.language,org.apache.camel.impl,javax.el'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=de.odysseus.el.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package de.odysseus.el.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.el)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.el
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.juel)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.juel ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
</resource>
<resource id='org.apache.camel.camel-juel/1.6.1' presentationname='camel-juel' symbolicname='org.apache.camel.camel-juel' uri='../org/apache/camel/camel-juel/1.6.1/camel-juel-1.6.1.jar' version='1.6.1'>
  <description>
    Camel JUEL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14421
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-juel'/>
    <p n='symbolicname' v='org.apache.camel.camel-juel'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.juel'/>
    <p n='uses' v='org.apache.camel.spi,de.odysseus.el.util,org.apache.camel,org.apache.camel.language,org.apache.camel.impl,javax.el'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=de.odysseus.el.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package de.odysseus.el.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.el)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.el
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.juel)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.juel ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
</resource>
<resource id='org.apache.camel.camel-juel/2.0.0.M2' presentationname='camel-juel' symbolicname='org.apache.camel.camel-juel' uri='../org/apache/camel/camel-juel/2.0-M2/camel-juel-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel JUEL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14557
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-juel'/>
    <p n='symbolicname' v='org.apache.camel.camel-juel'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.juel'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,de.odysseus.el.util,org.apache.camel.language,org.apache.camel.impl,javax.el'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=de.odysseus.el.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package de.odysseus.el.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.el)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.el
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.juel)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.juel ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
</resource>
<resource id='org.apache.camel.camel-jhc/1.6.1' presentationname='camel-jhc' symbolicname='org.apache.camel.camel-jhc' uri='../org/apache/camel/camel-jhc/1.6.1/camel-jhc-1.6.1.jar' version='1.6.1'>
  <description>
    Camel Jakarta Http Components support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    44968
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jhc'/>
    <p n='symbolicname' v='org.apache.camel.camel-jhc'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jhc'/>
    <p n='uses' v='org.apache.http.nio.reactor,org.apache.http.nio.entity,org.apache.http.impl.nio,org.apache.http.impl.nio.reactor,org.apache.camel.util,org.apache.http.nio,org.apache.camel.impl,org.apache.http.nio.util,org.apache.http.protocol,org.apache.http.message,org.apache.http.entity,org.apache.http.impl,org.apache.commons.logging,org.apache.http.params,org.apache.http,org.apache.camel.spi,org.apache.camel,org.apache.http.util,org.apache.http.nio.protocol,javax.net.ssl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jhc)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jhc ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.entity)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.entity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.impl.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.impl.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.impl.nio.reactor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.impl.nio.reactor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.nio.entity)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.nio.entity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.nio.protocol)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.nio.protocol
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.nio.reactor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.nio.reactor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.nio.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.nio.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.params)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.params
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.protocol)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.protocol
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.util
  </require>
</resource>
<resource id='org.apache.camel.camel-quartz/2.0.0.M3' presentationname='camel-quartz' symbolicname='org.apache.camel.camel-quartz' uri='../org/apache/camel/camel-quartz/2.0-M3/camel-quartz-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Quartz support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20420
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-quartz'/>
    <p n='symbolicname' v='org.apache.camel.camel-quartz'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.quartz'/>
    <p n='uses' v='org.apache.camel,org.quartz.impl,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,org.quartz,org.apache.camel.processor.loadbalancer'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.quartz)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.quartz ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.quartz
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.quartz.impl
  </require>
</resource>
<resource id='org.apache.camel.camel-quartz/2.0.0' presentationname='camel-quartz' symbolicname='org.apache.camel.camel-quartz' uri='../org/apache/camel/camel-quartz/2.0.0/camel-quartz-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Quartz support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    25446
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-quartz'/>
    <p n='symbolicname' v='org.apache.camel.camel-quartz'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.quartz'/>
    <p n='uses' v='org.apache.camel,org.quartz.impl,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,org.quartz,org.apache.camel.processor.loadbalancer'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.quartz)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.quartz ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.quartz
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.quartz.impl
  </require>
</resource>
<resource id='org.apache.camel.camel-quartz/1.6.1' presentationname='camel-quartz' symbolicname='org.apache.camel.camel-quartz' uri='../org/apache/camel/camel-quartz/1.6.1/camel-quartz-1.6.1.jar' version='1.6.1'>
  <description>
    Camel Quartz support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20685
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-quartz'/>
    <p n='symbolicname' v='org.apache.camel.camel-quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.quartz'/>
    <p n='uses' v='org.apache.camel,org.quartz.impl,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,org.quartz,org.apache.camel.processor.loadbalancer'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.quartz)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.quartz ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.quartz
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.quartz.impl
  </require>
</resource>
<resource id='org.apache.camel.camel-quartz/2.0.0.M2' presentationname='camel-quartz' symbolicname='org.apache.camel.camel-quartz' uri='../org/apache/camel/camel-quartz/2.0-M2/camel-quartz-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Quartz support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20421
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-quartz'/>
    <p n='symbolicname' v='org.apache.camel.camel-quartz'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.quartz'/>
    <p n='uses' v='org.apache.camel,org.quartz.impl,org.apache.commons.logging,org.apache.camel.util,org.apache.camel.impl,org.quartz,org.apache.camel.processor.loadbalancer'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.quartz)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.quartz ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.quartz
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.quartz.impl
  </require>
</resource>
<resource id='org.apache.camel.camel-jt400/2.0.0.M3' presentationname='camel-jt400' symbolicname='org.apache.camel.camel-jt400' uri='../org/apache/camel/camel-jt400/2.0-M3/camel-jt400-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel AS/400 support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15370
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jt400'/>
    <p n='symbolicname' v='org.apache.camel.camel-jt400'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jt400'/>
    <p n='uses' v='com.ibm.as400.access,org.apache.camel,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibm.as400.access)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.as400.access
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jt400)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jt400 ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
</resource>
<resource id='org.apache.camel.camel-jt400/1.6.1' presentationname='camel-jt400' symbolicname='org.apache.camel.camel-jt400' uri='../org/apache/camel/camel-jt400/1.6.1/camel-jt400-1.6.1.jar' version='1.6.1'>
  <description>
    Camel AS/400 support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15522
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jt400'/>
    <p n='symbolicname' v='org.apache.camel.camel-jt400'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jt400'/>
    <p n='uses' v='com.ibm.as400.access,org.apache.camel,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibm.as400.access)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.as400.access
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jt400)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jt400 ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
</resource>
<resource id='org.apache.camel.camel-jt400/2.0.0' presentationname='camel-jt400' symbolicname='org.apache.camel.camel-jt400' uri='../org/apache/camel/camel-jt400/2.0.0/camel-jt400-2.0.0.jar' version='2.0.0'>
  <description>
    Camel AS/400 support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20471
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jt400'/>
    <p n='symbolicname' v='org.apache.camel.camel-jt400'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jt400'/>
    <p n='uses' v='com.ibm.as400.access,org.apache.camel,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibm.as400.access)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.as400.access
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jt400)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jt400 ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
</resource>
<resource id='org.apache.camel.camel-jt400/2.0.0.M2' presentationname='camel-jt400' symbolicname='org.apache.camel.camel-jt400' uri='../org/apache/camel/camel-jt400/2.0-M2/camel-jt400-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel AS/400 support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15378
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jt400'/>
    <p n='symbolicname' v='org.apache.camel.camel-jt400'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jt400'/>
    <p n='uses' v='com.ibm.as400.access,org.apache.camel,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibm.as400.access)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.as400.access
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jt400)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jt400 ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
</resource>
<resource id='org.apache.camel.camel-scala/2.0.0' presentationname='camel-scala' symbolicname='org.apache.camel.camel-scala' uri='../org/apache/camel/camel-scala/2.0.0/camel-scala-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Scala DSL
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    120521
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-scala'/>
    <p n='symbolicname' v='org.apache.camel.camel-scala'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala'/>
    <p n='uses' v='org.apache.camel,scala'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala.dsl.languages'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,scala'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala.dsl'/>
    <p n='uses' v='org.apache.camel.scala,org.apache.camel.scala.dsl.builder,org.apache.camel.model.config,scala,org.apache.camel.processor.aggregate,org.apache.camel.model,org.apache.camel,org.apache.camel.spi,org.apache.camel.processor.idempotent,scala.runtime'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala.dsl.builder'/>
    <p n='uses' v='org.apache.camel.scala,org.apache.camel.scala.dsl.languages,scala.collection.mutable,scala,org.apache.camel.model.dataformat,org.apache.camel.processor.aggregate,org.apache.camel.model,org.apache.camel.builder,org.apache.camel.scala.dsl,org.apache.camel.spi,org.apache.camel,scala.reflect,scala.runtime'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala.converters'/>
    <p n='uses' v='org.apache.camel.converter.jaxp,scala.xml,org.apache.camel,org.w3c.dom,scala'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.dataformat)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.dataformat
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.aggregate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.aggregate
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.idempotent)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.idempotent
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala.converters)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala.converters ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala.dsl)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala.dsl ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala.dsl.builder)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala.dsl.builder ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala.dsl.languages)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala.dsl.languages ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=scala)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala
  </require>
  <require extend='false' filter='(&amp;(package=scala.collection.mutable)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala.collection.mutable
  </require>
  <require extend='false' filter='(&amp;(package=scala.reflect)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala.reflect
  </require>
  <require extend='false' filter='(&amp;(package=scala.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala.runtime
  </require>
  <require extend='false' filter='(&amp;(package=scala.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala.xml
  </require>
</resource>
<resource id='org.apache.camel.camel-scala/2.0.0.M2' presentationname='camel-scala' symbolicname='org.apache.camel.camel-scala' uri='../org/apache/camel/camel-scala/2.0-M2/camel-scala-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Scala DSL
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    115590
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-scala'/>
    <p n='symbolicname' v='org.apache.camel.camel-scala'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala'/>
    <p n='uses' v='org.apache.camel,scala'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala.dsl.languages'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,scala'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala.dsl'/>
    <p n='uses' v='org.apache.camel.scala,org.apache.camel.scala.dsl.builder,org.apache.camel.model.config,scala,org.apache.camel.processor.aggregate,org.apache.camel.model,org.apache.camel,org.apache.camel.spi,org.apache.camel.processor.idempotent,scala.runtime'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala.dsl.builder'/>
    <p n='uses' v='org.apache.camel.scala,org.apache.camel.scala.dsl.languages,scala.collection.mutable,scala,org.apache.camel.model.dataformat,org.apache.camel.processor.aggregate,org.apache.camel.model,org.apache.camel.builder,org.apache.camel.scala.dsl,org.apache.camel.spi,org.apache.camel,scala.reflect,scala.runtime'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala.converters'/>
    <p n='uses' v='org.apache.camel.converter.jaxp,scala.xml,org.apache.camel,org.w3c.dom,scala'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.dataformat)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.dataformat
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.aggregate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.aggregate
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.idempotent)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.idempotent
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala.converters)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala.converters ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala.dsl)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala.dsl ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala.dsl.builder)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala.dsl.builder ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala.dsl.languages)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala.dsl.languages ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=scala)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala
  </require>
  <require extend='false' filter='(&amp;(package=scala.collection.mutable)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala.collection.mutable
  </require>
  <require extend='false' filter='(&amp;(package=scala.reflect)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala.reflect
  </require>
  <require extend='false' filter='(&amp;(package=scala.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala.runtime
  </require>
  <require extend='false' filter='(&amp;(package=scala.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala.xml
  </require>
</resource>
<resource id='org.apache.camel.camel-scala/1.6.1' presentationname='camel-scala' symbolicname='org.apache.camel.camel-scala' uri='../org/apache/camel/camel-scala/1.6.1/camel-scala-1.6.1.jar' version='1.6.1'>
  <description>
    Camel Scala DSL
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    58461
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-scala'/>
    <p n='symbolicname' v='org.apache.camel.camel-scala'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala'/>
    <p n='uses' v='org.apache.camel,scala'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala.dsl.languages'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,scala,org.apache.camel.builder.xml'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala.dsl'/>
    <p n='uses' v='org.apache.camel.scala,org.apache.camel.model,org.apache.camel.scala.dsl.builder,org.apache.camel,org.apache.camel.model.config,scala,org.apache.camel.processor.idempotent,org.apache.camel.processor.aggregate,scala.runtime'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala.dsl.builder'/>
    <p n='uses' v='org.apache.camel.scala,org.apache.camel.model,org.apache.camel.scala.dsl,org.apache.camel.builder,scala.collection.mutable,org.apache.camel,scala,scala.reflect,scala.runtime'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala.converters'/>
    <p n='uses' v='org.apache.camel.converter.jaxp,scala.xml,org.apache.camel,org.w3c.dom,scala'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.aggregate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.aggregate
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.idempotent)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.idempotent
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala.converters)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala.converters ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala.dsl)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala.dsl ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala.dsl.builder)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala.dsl.builder ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala.dsl.languages)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala.dsl.languages ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=scala)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala
  </require>
  <require extend='false' filter='(&amp;(package=scala.collection.mutable)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala.collection.mutable
  </require>
  <require extend='false' filter='(&amp;(package=scala.reflect)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala.reflect
  </require>
  <require extend='false' filter='(&amp;(package=scala.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala.runtime
  </require>
  <require extend='false' filter='(&amp;(package=scala.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala.xml
  </require>
</resource>
<resource id='org.apache.camel.camel-scala/2.0.0.M3' presentationname='camel-scala' symbolicname='org.apache.camel.camel-scala' uri='../org/apache/camel/camel-scala/2.0-M3/camel-scala-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Scala DSL
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    115422
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-scala'/>
    <p n='symbolicname' v='org.apache.camel.camel-scala'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala'/>
    <p n='uses' v='org.apache.camel,scala'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala.dsl.languages'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,scala'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala.dsl'/>
    <p n='uses' v='org.apache.camel.scala,org.apache.camel.scala.dsl.builder,org.apache.camel.model.config,scala,org.apache.camel.processor.aggregate,org.apache.camel.model,org.apache.camel,org.apache.camel.spi,org.apache.camel.processor.idempotent,scala.runtime'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala.dsl.builder'/>
    <p n='uses' v='org.apache.camel.scala,org.apache.camel.scala.dsl.languages,scala.collection.mutable,scala,org.apache.camel.model.dataformat,org.apache.camel.processor.aggregate,org.apache.camel.model,org.apache.camel.builder,org.apache.camel.scala.dsl,org.apache.camel.spi,org.apache.camel,scala.reflect,scala.runtime'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.scala.converters'/>
    <p n='uses' v='org.apache.camel.converter.jaxp,scala.xml,org.apache.camel,org.w3c.dom,scala'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.dataformat)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.dataformat
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.aggregate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.aggregate
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.idempotent)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.idempotent
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala.converters)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala.converters ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala.dsl)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala.dsl ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala.dsl.builder)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala.dsl.builder ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.scala.dsl.languages)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.scala.dsl.languages ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=scala)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala
  </require>
  <require extend='false' filter='(&amp;(package=scala.collection.mutable)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala.collection.mutable
  </require>
  <require extend='false' filter='(&amp;(package=scala.reflect)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala.reflect
  </require>
  <require extend='false' filter='(&amp;(package=scala.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala.runtime
  </require>
  <require extend='false' filter='(&amp;(package=scala.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package scala.xml
  </require>
</resource>
<resource id='org.apache.camel.camel-velocity/2.0.0' presentationname='camel-velocity' symbolicname='org.apache.camel.camel-velocity' uri='../org/apache/camel/camel-velocity/2.0.0/camel-velocity-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Velocity support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18564
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-velocity'/>
    <p n='symbolicname' v='org.apache.camel.camel-velocity'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.velocity'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.component,org.springframework.core.io,org.apache.velocity.runtime.log,org.apache.camel,org.apache.velocity.app,org.apache.velocity.context,org.apache.velocity,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.velocity)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.velocity ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.log
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-velocity/2.0.0.M3' presentationname='camel-velocity' symbolicname='org.apache.camel.camel-velocity' uri='../org/apache/camel/camel-velocity/2.0-M3/camel-velocity-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Velocity support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13289
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-velocity'/>
    <p n='symbolicname' v='org.apache.camel.camel-velocity'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.velocity'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.component,org.springframework.core.io,org.apache.velocity.runtime.log,org.apache.camel,org.apache.velocity.app,org.apache.velocity.context,org.apache.velocity,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.velocity)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.velocity ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.log
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-velocity/1.6.1' presentationname='camel-velocity' symbolicname='org.apache.camel.camel-velocity' uri='../org/apache/camel/camel-velocity/1.6.1/camel-velocity-1.6.1.jar' version='1.6.1'>
  <description>
    Camel Velocity support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12448
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-velocity'/>
    <p n='symbolicname' v='org.apache.camel.camel-velocity'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.velocity'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.component,org.springframework.core.io,org.apache.velocity.runtime.log,org.apache.camel,org.apache.velocity.app,org.apache.velocity,org.apache.velocity.context,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.velocity)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.velocity ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.log
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-velocity/2.0.0.M2' presentationname='camel-velocity' symbolicname='org.apache.camel.camel-velocity' uri='../org/apache/camel/camel-velocity/2.0-M2/camel-velocity-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Velocity support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13301
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-velocity'/>
    <p n='symbolicname' v='org.apache.camel.camel-velocity'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.velocity'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.component,org.springframework.core.io,org.apache.velocity.runtime.log,org.apache.camel,org.apache.velocity.app,org.apache.velocity.context,org.apache.velocity,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.velocity)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.velocity ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.log
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-josql/2.0.0.M2' presentationname='camel-josql' symbolicname='org.apache.camel.camel-josql' uri='../org/apache/camel/camel-josql/2.0-M2/camel-josql-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel JoSQL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10852
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-josql'/>
    <p n='symbolicname' v='org.apache.camel.camel-josql'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.builder.sql'/>
    <p n='uses' v='org.josql,org.apache.camel,org.apache.camel.util,org.apache.camel.language'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder.sql)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder.sql ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.josql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.josql
  </require>
</resource>
<resource id='org.apache.camel.camel-josql/2.0.0' presentationname='camel-josql' symbolicname='org.apache.camel.camel-josql' uri='../org/apache/camel/camel-josql/2.0.0/camel-josql-2.0.0.jar' version='2.0.0'>
  <description>
    Camel JoSQL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15845
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-josql'/>
    <p n='symbolicname' v='org.apache.camel.camel-josql'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.builder.sql'/>
    <p n='uses' v='org.josql,org.apache.camel,org.apache.camel.util,org.apache.camel.language'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder.sql)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder.sql ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.josql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.josql
  </require>
</resource>
<resource id='org.apache.camel.camel-josql/2.0.0.M3' presentationname='camel-josql' symbolicname='org.apache.camel.camel-josql' uri='../org/apache/camel/camel-josql/2.0-M3/camel-josql-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel JoSQL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10845
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-josql'/>
    <p n='symbolicname' v='org.apache.camel.camel-josql'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.builder.sql'/>
    <p n='uses' v='org.josql,org.apache.camel,org.apache.camel.util,org.apache.camel.language'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder.sql)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder.sql ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.josql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.josql
  </require>
</resource>
<resource id='org.apache.camel.camel-josql/1.6.1' presentationname='camel-josql' symbolicname='org.apache.camel.camel-josql' uri='../org/apache/camel/camel-josql/1.6.1/camel-josql-1.6.1.jar' version='1.6.1'>
  <description>
    Camel JoSQL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10927
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-josql'/>
    <p n='symbolicname' v='org.apache.camel.camel-josql'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.builder.sql'/>
    <p n='uses' v='org.josql,org.apache.camel,org.apache.camel.util,org.apache.camel.language'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder.sql)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder.sql ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.josql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.josql
  </require>
</resource>
<resource id='org.apache.camel.camel-rmi/2.0.0.M3' presentationname='camel-rmi' symbolicname='org.apache.camel.camel-rmi' uri='../org/apache/camel/camel-rmi/2.0-M3/camel-rmi-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel RMI support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15687
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-rmi'/>
    <p n='symbolicname' v='org.apache.camel.camel-rmi'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.rmi'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.apache.camel.component.bean,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.rmi)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.rmi ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
</resource>
<resource id='org.apache.camel.camel-rmi/2.0.0' presentationname='camel-rmi' symbolicname='org.apache.camel.camel-rmi' uri='../org/apache/camel/camel-rmi/2.0.0/camel-rmi-2.0.0.jar' version='2.0.0'>
  <description>
    Camel RMI support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20648
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-rmi'/>
    <p n='symbolicname' v='org.apache.camel.camel-rmi'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.rmi'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.apache.camel.component.bean,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.rmi)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.rmi ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
</resource>
<resource id='org.apache.camel.camel-rmi/2.0.0.M2' presentationname='camel-rmi' symbolicname='org.apache.camel.camel-rmi' uri='../org/apache/camel/camel-rmi/2.0-M2/camel-rmi-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel RMI support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15693
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-rmi'/>
    <p n='symbolicname' v='org.apache.camel.camel-rmi'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.rmi'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.apache.camel.component.bean,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.rmi)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.rmi ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
</resource>
<resource id='org.apache.camel.camel-rmi/1.6.1' presentationname='camel-rmi' symbolicname='org.apache.camel.camel-rmi' uri='../org/apache/camel/camel-rmi/1.6.1/camel-rmi-1.6.1.jar' version='1.6.1'>
  <description>
    Camel RMI support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15620
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-rmi'/>
    <p n='symbolicname' v='org.apache.camel.camel-rmi'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.rmi'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.component.bean,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.rmi)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.rmi ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
</resource>
<resource id='org.apache.camel.camel-sql/2.0.0.M2' presentationname='camel-sql' symbolicname='org.apache.camel.camel-sql' uri='../org/apache/camel/camel-sql/2.0-M2/camel-sql-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel SQL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14432
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-sql'/>
    <p n='symbolicname' v='org.apache.camel.camel-sql'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.sql'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.springframework.jdbc.core,org.springframework.dao,org.apache.camel.impl,javax.sql'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.sql)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.sql ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.dao)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.dao
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jdbc.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jdbc.core
  </require>
</resource>
<resource id='org.apache.camel.camel-sql/1.6.1' presentationname='camel-sql' symbolicname='org.apache.camel.camel-sql' uri='../org/apache/camel/camel-sql/1.6.1/camel-sql-1.6.1.jar' version='1.6.1'>
  <description>
    Camel SQL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14081
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-sql'/>
    <p n='symbolicname' v='org.apache.camel.camel-sql'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.sql'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.springframework.jdbc.core,org.springframework.dao,org.apache.camel.impl,javax.sql'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.sql)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.sql ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.dao)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.dao
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jdbc.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jdbc.core
  </require>
</resource>
<resource id='org.apache.camel.camel-sql/2.0.0.M3' presentationname='camel-sql' symbolicname='org.apache.camel.camel-sql' uri='../org/apache/camel/camel-sql/2.0-M3/camel-sql-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel SQL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14423
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-sql'/>
    <p n='symbolicname' v='org.apache.camel.camel-sql'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.sql'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.springframework.jdbc.core,org.springframework.dao,org.apache.camel.impl,javax.sql'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.sql)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.sql ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.dao)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.dao
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jdbc.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jdbc.core
  </require>
</resource>
<resource id='org.apache.camel.camel-sql/2.0.0' presentationname='camel-sql' symbolicname='org.apache.camel.camel-sql' uri='../org/apache/camel/camel-sql/2.0.0/camel-sql-2.0.0.jar' version='2.0.0'>
  <description>
    Camel SQL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19492
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-sql'/>
    <p n='symbolicname' v='org.apache.camel.camel-sql'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.sql'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.springframework.jdbc.core,org.springframework.dao,org.apache.camel.impl,javax.sql'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.sql)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.sql ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.dao)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.dao
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jdbc.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jdbc.core
  </require>
</resource>
<resource id='org.apache.camel.camel-csv/2.0.0.M2' presentationname='camel-csv' symbolicname='org.apache.camel.camel-csv' uri='../org/apache/camel/camel-csv/2.0-M2/camel-csv-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel CSV support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10324
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-csv'/>
    <p n='symbolicname' v='org.apache.camel.camel-csv'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.csv'/>
    <p n='uses' v='org.apache.commons.csv.writer,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.commons.csv'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.csv)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.csv ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.csv)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.csv
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.csv.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.csv.writer
  </require>
</resource>
<resource id='org.apache.camel.camel-csv/1.6.1' presentationname='camel-csv' symbolicname='org.apache.camel.camel-csv' uri='../org/apache/camel/camel-csv/1.6.1/camel-csv-1.6.1.jar' version='1.6.1'>
  <description>
    Camel CSV support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10319
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-csv'/>
    <p n='symbolicname' v='org.apache.camel.camel-csv'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.csv'/>
    <p n='uses' v='org.apache.commons.csv.writer,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.commons.csv'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.csv)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.csv ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.csv)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.csv
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.csv.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.csv.writer
  </require>
</resource>
<resource id='org.apache.camel.camel-csv/2.0.0' presentationname='camel-csv' symbolicname='org.apache.camel.camel-csv' uri='../org/apache/camel/camel-csv/2.0.0/camel-csv-2.0.0.jar' version='2.0.0'>
  <description>
    Camel CSV support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15307
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-csv'/>
    <p n='symbolicname' v='org.apache.camel.camel-csv'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.csv'/>
    <p n='uses' v='org.apache.commons.csv.writer,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.commons.csv'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.csv)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.csv ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.csv)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.csv
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.csv.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.csv.writer
  </require>
</resource>
<resource id='org.apache.camel.camel-csv/2.0.0.M3' presentationname='camel-csv' symbolicname='org.apache.camel.camel-csv' uri='../org/apache/camel/camel-csv/2.0-M3/camel-csv-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel CSV support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10310
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-csv'/>
    <p n='symbolicname' v='org.apache.camel.camel-csv'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.csv'/>
    <p n='uses' v='org.apache.commons.csv.writer,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.commons.csv'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.csv)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.csv ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.csv)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.csv
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.csv.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.csv.writer
  </require>
</resource>
<resource id='org.apache.camel.camel-jcr/2.0.0.M2' presentationname='camel-jcr' symbolicname='org.apache.camel.camel-jcr' uri='../org/apache/camel/camel-jcr/2.0-M2/camel-jcr-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel JCR support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15227
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jcr'/>
    <p n='symbolicname' v='org.apache.camel.camel-jcr'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jcr'/>
    <p n='uses' v='org.apache.jackrabbit.value,org.apache.camel.spi,org.apache.camel,org.apache.camel.impl,javax.jcr'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jcr)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jcr ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.value)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.value
  </require>
</resource>
<resource id='org.apache.camel.camel-jcr/2.0.0' presentationname='camel-jcr' symbolicname='org.apache.camel.camel-jcr' uri='../org/apache/camel/camel-jcr/2.0.0/camel-jcr-2.0.0.jar' version='2.0.0'>
  <description>
    Camel JCR support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    21054
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jcr'/>
    <p n='symbolicname' v='org.apache.camel.camel-jcr'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jcr'/>
    <p n='uses' v='org.apache.jackrabbit.value,org.apache.camel.spi,org.apache.camel,org.apache.camel.impl,javax.jcr'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jcr)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jcr ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.value)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.value
  </require>
</resource>
<resource id='org.apache.camel.camel-jcr/2.0.0.M3' presentationname='camel-jcr' symbolicname='org.apache.camel.camel-jcr' uri='../org/apache/camel/camel-jcr/2.0-M3/camel-jcr-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel JCR support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15220
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jcr'/>
    <p n='symbolicname' v='org.apache.camel.camel-jcr'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jcr'/>
    <p n='uses' v='org.apache.jackrabbit.value,org.apache.camel.spi,org.apache.camel,org.apache.camel.impl,javax.jcr'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jcr)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jcr ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.value)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.value
  </require>
</resource>
<resource id='org.apache.camel.camel-jcr/1.6.1' presentationname='camel-jcr' symbolicname='org.apache.camel.camel-jcr' uri='../org/apache/camel/camel-jcr/1.6.1/camel-jcr-1.6.1.jar' version='1.6.1'>
  <description>
    Camel JCR support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14948
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jcr'/>
    <p n='symbolicname' v='org.apache.camel.camel-jcr'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jcr'/>
    <p n='uses' v='org.apache.jackrabbit.value,org.apache.camel.spi,org.apache.camel,org.apache.camel.impl,javax.jcr'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jcr)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jcr ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.value)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.value
  </require>
</resource>
<resource id='org.apache.camel.camel-script/2.0.0.M2' presentationname='camel-script' symbolicname='org.apache.camel.camel-script' uri='../org/apache/camel/camel-script/2.0-M2/camel-script-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Script support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19183
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-script'/>
    <p n='symbolicname' v='org.apache.camel.camel-script'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.builder.script'/>
    <p n='uses' v='javax.script,org.springframework.core.io,org.apache.camel.converter,org.apache.camel.spi,org.apache.camel,org.apache.commons.logging,org.apache.camel.language'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.script)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.script
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder.script)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder.script ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-script/2.0.0' presentationname='camel-script' symbolicname='org.apache.camel.camel-script' uri='../org/apache/camel/camel-script/2.0.0/camel-script-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Script support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    24229
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-script'/>
    <p n='symbolicname' v='org.apache.camel.camel-script'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.builder.script'/>
    <p n='uses' v='javax.script,org.springframework.core.io,org.apache.camel.converter,org.apache.camel.spi,org.apache.camel,org.apache.commons.logging,org.apache.camel.language'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.script)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.script
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder.script)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder.script ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-script/2.0.0.M3' presentationname='camel-script' symbolicname='org.apache.camel.camel-script' uri='../org/apache/camel/camel-script/2.0-M3/camel-script-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Script support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19183
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-script'/>
    <p n='symbolicname' v='org.apache.camel.camel-script'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.builder.script'/>
    <p n='uses' v='javax.script,org.springframework.core.io,org.apache.camel.converter,org.apache.camel.spi,org.apache.camel,org.apache.commons.logging,org.apache.camel.language'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.script)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.script
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder.script)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder.script ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-script/1.6.1' presentationname='camel-script' symbolicname='org.apache.camel.camel-script' uri='../org/apache/camel/camel-script/1.6.1/camel-script-1.6.1.jar' version='1.6.1'>
  <description>
    Camel Script support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20053
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-script'/>
    <p n='symbolicname' v='org.apache.camel.camel-script'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.builder.script'/>
    <p n='uses' v='javax.script,org.springframework.core.io,org.apache.camel.converter,org.apache.camel.spi,org.apache.camel,org.apache.commons.logging,org.apache.camel.language'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.script)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.script
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder.script)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder.script ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-ognl/1.6.1' presentationname='camel-ognl' symbolicname='org.apache.camel.camel-ognl' uri='../org/apache/camel/camel-ognl/1.6.1/camel-ognl-1.6.1.jar' version='1.6.1'>
  <description>
    Camel OGNL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12377
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ognl'/>
    <p n='symbolicname' v='org.apache.camel.camel-ognl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.ognl'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,ognl,org.apache.camel.language,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=ognl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ognl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.ognl)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.ognl ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
</resource>
<resource id='org.apache.camel.camel-ognl/2.0.0.M2' presentationname='camel-ognl' symbolicname='org.apache.camel.camel-ognl' uri='../org/apache/camel/camel-ognl/2.0-M2/camel-ognl-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel OGNL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12618
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ognl'/>
    <p n='symbolicname' v='org.apache.camel.camel-ognl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.ognl'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,ognl,org.apache.camel.language,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=ognl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ognl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.ognl)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.ognl ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
</resource>
<resource id='org.apache.camel.camel-ognl/2.0.0.M3' presentationname='camel-ognl' symbolicname='org.apache.camel.camel-ognl' uri='../org/apache/camel/camel-ognl/2.0-M3/camel-ognl-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel OGNL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12614
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ognl'/>
    <p n='symbolicname' v='org.apache.camel.camel-ognl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.ognl'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,ognl,org.apache.camel.language,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=ognl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ognl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.ognl)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.ognl ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
</resource>
<resource id='org.apache.camel.camel-ognl/2.0.0' presentationname='camel-ognl' symbolicname='org.apache.camel.camel-ognl' uri='../org/apache/camel/camel-ognl/2.0.0/camel-ognl-2.0.0.jar' version='2.0.0'>
  <description>
    Camel OGNL support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17755
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ognl'/>
    <p n='symbolicname' v='org.apache.camel.camel-ognl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.ognl'/>
    <p n='uses' v='org.apache.camel.spi,org.apache.camel,ognl,org.apache.camel.language,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=ognl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ognl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.ognl)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.ognl ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
</resource>
<resource id='org.apache.camel.camel-ruby/2.0.0.M2' presentationname='camel-ruby' symbolicname='org.apache.camel.camel-ruby' uri='../org/apache/camel/camel-ruby/2.0-M2/camel-ruby-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Ruby support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10412
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ruby'/>
    <p n='symbolicname' v='org.apache.camel.camel-ruby'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.ruby'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.apache.camel,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.ruby)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.ruby ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-ruby/2.0.0.M3' presentationname='camel-ruby' symbolicname='org.apache.camel.camel-ruby' uri='../org/apache/camel/camel-ruby/2.0-M3/camel-ruby-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Ruby support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10404
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ruby'/>
    <p n='symbolicname' v='org.apache.camel.camel-ruby'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.ruby'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.apache.camel,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.ruby)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.ruby ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-ruby/2.0.0' presentationname='camel-ruby' symbolicname='org.apache.camel.camel-ruby' uri='../org/apache/camel/camel-ruby/2.0.0/camel-ruby-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Ruby support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15639
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ruby'/>
    <p n='symbolicname' v='org.apache.camel.camel-ruby'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.ruby'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.apache.camel,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.ruby)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.ruby ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-stringtemplate/2.0.0.M2' presentationname='camel-stringtemplate' symbolicname='org.apache.camel.camel-stringtemplate' uri='../org/apache/camel/camel-stringtemplate/2.0-M2/camel-stringtemplate-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel StringTemplate support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12090
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-stringtemplate'/>
    <p n='symbolicname' v='org.apache.camel.camel-stringtemplate'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.stringtemplate'/>
    <p n='uses' v='org.springframework.core.io,org.apache.camel.converter,org.apache.camel,org.antlr.stringtemplate,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.component'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.antlr.stringtemplate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.antlr.stringtemplate
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.stringtemplate)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.stringtemplate ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-stringtemplate/1.6.1' presentationname='camel-stringtemplate' symbolicname='org.apache.camel.camel-stringtemplate' uri='../org/apache/camel/camel-stringtemplate/1.6.1/camel-stringtemplate-1.6.1.jar' version='1.6.1'>
  <description>
    Camel StringTemplate support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11559
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-stringtemplate'/>
    <p n='symbolicname' v='org.apache.camel.camel-stringtemplate'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.stringtemplate'/>
    <p n='uses' v='org.springframework.core.io,org.apache.camel.converter,org.apache.camel,org.antlr.stringtemplate,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.component'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.antlr.stringtemplate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.antlr.stringtemplate
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.stringtemplate)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.stringtemplate ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-stringtemplate/2.0.0' presentationname='camel-stringtemplate' symbolicname='org.apache.camel.camel-stringtemplate' uri='../org/apache/camel/camel-stringtemplate/2.0.0/camel-stringtemplate-2.0.0.jar' version='2.0.0'>
  <description>
    Camel StringTemplate support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17262
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-stringtemplate'/>
    <p n='symbolicname' v='org.apache.camel.camel-stringtemplate'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.stringtemplate'/>
    <p n='uses' v='org.springframework.core.io,org.apache.camel.converter,org.apache.camel,org.antlr.stringtemplate,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.component'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.antlr.stringtemplate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.antlr.stringtemplate
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.stringtemplate)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.stringtemplate ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-stringtemplate/2.0.0.M3' presentationname='camel-stringtemplate' symbolicname='org.apache.camel.camel-stringtemplate' uri='../org/apache/camel/camel-stringtemplate/2.0-M3/camel-stringtemplate-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel StringTemplate support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12082
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-stringtemplate'/>
    <p n='symbolicname' v='org.apache.camel.camel-stringtemplate'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.stringtemplate'/>
    <p n='uses' v='org.springframework.core.io,org.apache.camel.converter,org.apache.camel,org.antlr.stringtemplate,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.component'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.antlr.stringtemplate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.antlr.stringtemplate
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.stringtemplate)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.stringtemplate ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-irc/2.0.0' presentationname='camel-irc' symbolicname='org.apache.camel.camel-irc' uri='../org/apache/camel/camel-irc/2.0.0/camel-irc-2.0.0.jar' version='2.0.0'>
  <description>
    Camel IRC support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    32440
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-irc'/>
    <p n='symbolicname' v='org.apache.camel.camel-irc'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.irc'/>
    <p n='uses' v='org.schwering.irc.lib.ssl,org.apache.camel,org.schwering.irc.lib,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.irc)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.irc ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.schwering.irc.lib)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.schwering.irc.lib
  </require>
  <require extend='false' filter='(&amp;(package=org.schwering.irc.lib.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.schwering.irc.lib.ssl
  </require>
</resource>
<resource id='org.apache.camel.camel-irc/2.0.0.M2' presentationname='camel-irc' symbolicname='org.apache.camel.camel-irc' uri='../org/apache/camel/camel-irc/2.0-M2/camel-irc-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel IRC support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26744
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-irc'/>
    <p n='symbolicname' v='org.apache.camel.camel-irc'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.irc'/>
    <p n='uses' v='org.apache.camel,org.schwering.irc.lib,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.irc)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.irc ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.schwering.irc.lib)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.schwering.irc.lib
  </require>
</resource>
<resource id='org.apache.camel.camel-irc/1.6.1' presentationname='camel-irc' symbolicname='org.apache.camel.camel-irc' uri='../org/apache/camel/camel-irc/1.6.1/camel-irc-1.6.1.jar' version='1.6.1'>
  <description>
    Camel IRC support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26510
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-irc'/>
    <p n='symbolicname' v='org.apache.camel.camel-irc'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.irc'/>
    <p n='uses' v='org.apache.camel,org.schwering.irc.lib,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.irc)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.irc ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.schwering.irc.lib)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.schwering.irc.lib
  </require>
</resource>
<resource id='org.apache.camel.camel-irc/2.0.0.M3' presentationname='camel-irc' symbolicname='org.apache.camel.camel-irc' uri='../org/apache/camel/camel-irc/2.0-M3/camel-irc-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel IRC support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    27302
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-irc'/>
    <p n='symbolicname' v='org.apache.camel.camel-irc'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.irc'/>
    <p n='uses' v='org.schwering.irc.lib.ssl,org.apache.camel,org.schwering.irc.lib,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.irc)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.irc ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.schwering.irc.lib)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.schwering.irc.lib
  </require>
  <require extend='false' filter='(&amp;(package=org.schwering.irc.lib.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.schwering.irc.lib.ssl
  </require>
</resource>
<resource id='org.apache.camel.camel-hl7/1.6.1' presentationname='camel-hl7' symbolicname='org.apache.camel.camel-hl7' uri='../org/apache/camel/camel-hl7/1.6.1/camel-hl7-1.6.1.jar' version='1.6.1'>
  <description>
    Camel HL7 support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19449
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-hl7'/>
    <p n='symbolicname' v='org.apache.camel.camel-hl7'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.hl7'/>
    <p n='uses' v='ca.uhn.hl7v2.util,ca.uhn.hl7v2,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,ca.uhn.hl7v2.parser,ca.uhn.hl7v2.model'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.hl7'/>
    <p n='uses' v='org.apache.mina.common,org.apache.commons.logging,org.apache.mina.filter.codec,ca.uhn.hl7v2.parser,ca.uhn.hl7v2.model'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.parser
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.hl7)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.hl7 ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.hl7)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.hl7 ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec
  </require>
</resource>
<resource id='org.apache.camel.camel-hl7/2.0.0.M2' presentationname='camel-hl7' symbolicname='org.apache.camel.camel-hl7' uri='../org/apache/camel/camel-hl7/2.0-M2/camel-hl7-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel HL7 support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19911
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-hl7'/>
    <p n='symbolicname' v='org.apache.camel.camel-hl7'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.hl7'/>
    <p n='uses' v='ca.uhn.hl7v2,ca.uhn.hl7v2.util,org.apache.mina.common,org.apache.commons.logging,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.mina.filter.codec,ca.uhn.hl7v2.model,ca.uhn.hl7v2.parser'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.parser
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.hl7)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.hl7 ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec
  </require>
</resource>
<resource id='org.apache.camel.camel-hl7/2.0.0' presentationname='camel-hl7' symbolicname='org.apache.camel.camel-hl7' uri='../org/apache/camel/camel-hl7/2.0.0/camel-hl7-2.0.0.jar' version='2.0.0'>
  <description>
    Camel HL7 support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    25373
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-hl7'/>
    <p n='symbolicname' v='org.apache.camel.camel-hl7'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.hl7'/>
    <p n='uses' v='ca.uhn.hl7v2,ca.uhn.hl7v2.util,org.apache.mina.common,ca.uhn.hl7v2.validation.impl,org.apache.commons.logging,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,ca.uhn.hl7v2.validation,org.apache.mina.filter.codec,ca.uhn.hl7v2.model,ca.uhn.hl7v2.parser'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.parser
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.util
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.validation
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.validation.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.validation.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.hl7)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.hl7 ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec
  </require>
</resource>
<resource id='org.apache.camel.camel-hl7/2.0.0.M3' presentationname='camel-hl7' symbolicname='org.apache.camel.camel-hl7' uri='../org/apache/camel/camel-hl7/2.0-M3/camel-hl7-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel HL7 support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19897
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-hl7'/>
    <p n='symbolicname' v='org.apache.camel.camel-hl7'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.hl7'/>
    <p n='uses' v='ca.uhn.hl7v2,ca.uhn.hl7v2.util,org.apache.mina.common,org.apache.commons.logging,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.mina.filter.codec,ca.uhn.hl7v2.model,ca.uhn.hl7v2.parser'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.parser
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.hl7)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.hl7 ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec
  </require>
</resource>
<resource id='org.apache.camel.camel-example-guice-jms/1.6.1' presentationname='camel-example-guice-jms' symbolicname='org.apache.camel.camel-example-guice-jms' uri='../org/apache/camel/camel-example-guice-jms/1.6.1/camel-example-guice-jms-1.6.1.jar' version='1.6.1'>
  <description>
    An example showing how to work with Camel, Guice and JMS
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12206
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-example-guice-jms'/>
    <p n='symbolicname' v='org.apache.camel.camel-example-guice-jms'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.example.guice.jms'/>
    <p n='uses' v='org.guiceyfruit.jndi,com.google.inject.binder,org.apache.camel.component.jms,com.google.inject.name,org.apache.activemq,org.apache.camel.model,org.apache.camel.builder,com.google.inject,javax.jms,org.apache.camel.guice'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.google.inject)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.binder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.binder
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.name)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.name
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.example.guice.jms)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.example.guice.jms ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.guice)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.guice
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.guiceyfruit.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.guiceyfruit.jndi
  </require>
</resource>
<resource id='org.apache.camel.camel-example-guice-jms/2.0.0.M3' presentationname='camel-example-guice-jms' symbolicname='org.apache.camel.camel-example-guice-jms' uri='../org/apache/camel/camel-example-guice-jms/2.0-M3/camel-example-guice-jms-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    An example showing how to work with Camel, Guice and JMS
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12217
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-example-guice-jms'/>
    <p n='symbolicname' v='org.apache.camel.camel-example-guice-jms'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.example.guice.jms'/>
    <p n='uses' v='org.guiceyfruit.jndi,com.google.inject.binder,org.apache.camel.component.jms,com.google.inject.name,org.apache.activemq,org.apache.camel.model,org.apache.camel.builder,com.google.inject,javax.jms,org.apache.camel.guice'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.google.inject)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.binder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.binder
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.name)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.name
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.example.guice.jms)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.example.guice.jms ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.guice)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.guice
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.guiceyfruit.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.guiceyfruit.jndi
  </require>
</resource>
<resource id='org.apache.camel.camel-example-guice-jms/2.0.0' presentationname='camel-example-guice-jms' symbolicname='org.apache.camel.camel-example-guice-jms' uri='../org/apache/camel/camel-example-guice-jms/2.0.0/camel-example-guice-jms-2.0.0.jar' version='2.0.0'>
  <description>
    An example showing how to work with Camel, Guice and JMS
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17874
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-example-guice-jms'/>
    <p n='symbolicname' v='org.apache.camel.camel-example-guice-jms'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.example.guice.jms'/>
    <p n='uses' v='org.guiceyfruit.jndi,com.google.inject.binder,org.apache.camel.component.jms,com.google.inject.name,org.apache.activemq,org.apache.camel.model,org.apache.camel.builder,com.google.inject,javax.jms,org.apache.camel.guice'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.google.inject)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.binder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.binder
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.name)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.name
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.example.guice.jms)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.example.guice.jms ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.guice)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.guice
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.guiceyfruit.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.guiceyfruit.jndi
  </require>
</resource>
<resource id='org.apache.camel.camel-example-guice-jms/2.0.0.M2' presentationname='camel-example-guice-jms' symbolicname='org.apache.camel.camel-example-guice-jms' uri='../org/apache/camel/camel-example-guice-jms/2.0-M2/camel-example-guice-jms-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    An example showing how to work with Camel, Guice and JMS
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12216
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-example-guice-jms'/>
    <p n='symbolicname' v='org.apache.camel.camel-example-guice-jms'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.example.guice.jms'/>
    <p n='uses' v='org.guiceyfruit.jndi,com.google.inject.binder,org.apache.camel.component.jms,com.google.inject.name,org.apache.activemq,org.apache.camel.model,org.apache.camel.builder,com.google.inject,javax.jms,org.apache.camel.guice'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.google.inject)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.binder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.binder
  </require>
  <require extend='false' filter='(&amp;(package=com.google.inject.name)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.google.inject.name
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.example.guice.jms)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.example.guice.jms ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.guice)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.guice
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.guiceyfruit.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.guiceyfruit.jndi
  </require>
</resource>
<resource id='org.apache.camel.camel-mina/2.0.0.M3' presentationname='camel-mina' symbolicname='org.apache.camel.camel-mina' uri='../org/apache/camel/camel-mina/2.0-M3/camel-mina-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel MINA support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    37971
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-mina'/>
    <p n='symbolicname' v='org.apache.camel.camel-mina'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.mina'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.apache.mina.common,org.apache.mina.transport.socket.nio,org.apache.commons.logging,org.apache.mina.filter.codec.textline,org.apache.camel,org.apache.camel.util,org.apache.mina.filter.codec.serialization,org.apache.mina.filter,org.apache.camel.impl,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mina)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mina ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.serialization)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.serialization
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.textline)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.textline
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.socket.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.vmpipe
  </require>
</resource>
<resource id='org.apache.camel.camel-mina/2.0.0' presentationname='camel-mina' symbolicname='org.apache.camel.camel-mina' uri='../org/apache/camel/camel-mina/2.0.0/camel-mina-2.0.0.jar' version='2.0.0'>
  <description>
    Camel MINA support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    43099
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-mina'/>
    <p n='symbolicname' v='org.apache.camel.camel-mina'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.mina'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.apache.mina.common,org.apache.mina.transport.socket.nio,org.apache.commons.logging,org.apache.mina.filter.codec.textline,org.apache.camel,org.apache.camel.util,org.apache.mina.filter.codec.serialization,org.apache.mina.filter,org.apache.camel.impl,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mina)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mina ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=1.1.7)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common ;version=[1.1.7,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter)(version&gt;=1.1.7)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter ;version=[1.1.7,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=1.1.7)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec ;version=[1.1.7,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.serialization)(version&gt;=1.1.7)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.serialization ;version=[1.1.7,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.textline)(version&gt;=1.1.7)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.textline ;version=[1.1.7,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio)(version&gt;=1.1.7)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.socket.nio ;version=[1.1.7,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe)(version&gt;=1.1.7)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.vmpipe ;version=[1.1.7,2.0.0)
  </require>
</resource>
<resource id='org.apache.camel.camel-mina/1.6.1' presentationname='camel-mina' symbolicname='org.apache.camel.camel-mina' uri='../org/apache/camel/camel-mina/1.6.1/camel-mina-1.6.1.jar' version='1.6.1'>
  <description>
    Camel MINA support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    39955
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-mina'/>
    <p n='symbolicname' v='org.apache.camel.camel-mina'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.mina'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.apache.mina.common,org.apache.camel.converter,org.apache.mina.transport.socket.nio,org.apache.commons.logging,org.apache.mina.filter.codec.textline,org.apache.camel.impl.converter,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.mina.filter.codec.serialization,org.apache.mina.filter,org.apache.camel.impl,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mina)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mina ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.serialization)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.serialization
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.textline)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.textline
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.socket.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.vmpipe
  </require>
</resource>
<resource id='org.apache.camel.camel-mina/2.0.0.M2' presentationname='camel-mina' symbolicname='org.apache.camel.camel-mina' uri='../org/apache/camel/camel-mina/2.0-M2/camel-mina-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel MINA support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    37944
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-mina'/>
    <p n='symbolicname' v='org.apache.camel.camel-mina'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.mina'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.apache.mina.common,org.apache.mina.transport.socket.nio,org.apache.commons.logging,org.apache.mina.filter.codec.textline,org.apache.camel,org.apache.camel.util,org.apache.mina.filter.codec.serialization,org.apache.mina.filter,org.apache.camel.impl,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mina)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mina ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.serialization)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.serialization
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.textline)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.textline
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.socket.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.vmpipe
  </require>
</resource>
<resource id='org.apache.camel.camel-msv/1.6.1' presentationname='camel-msv' symbolicname='org.apache.camel.camel-msv' uri='../org/apache/camel/camel-msv/1.6.1/camel-msv-1.6.1.jar' version='1.6.1'>
  <description>
    Camel MSV support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10510
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-msv'/>
    <p n='symbolicname' v='org.apache.camel.camel-msv'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.validator.msv'/>
    <p n='uses' v='org.iso_relax.verifier,org.iso_relax.verifier.jaxp.validation,org.apache.camel.component.validator,javax.xml.validation'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.validator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.validator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.validator.msv)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.validator.msv ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.verifier)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.iso_relax.verifier
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.verifier.jaxp.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.iso_relax.verifier.jaxp.validation
  </require>
</resource>
<resource id='org.apache.camel.camel-msv/2.0.0.M2' presentationname='camel-msv' symbolicname='org.apache.camel.camel-msv' uri='../org/apache/camel/camel-msv/2.0-M2/camel-msv-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel MSV support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10513
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-msv'/>
    <p n='symbolicname' v='org.apache.camel.camel-msv'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.validator.msv'/>
    <p n='uses' v='org.iso_relax.verifier,org.iso_relax.verifier.jaxp.validation,org.apache.camel.component.validator,javax.xml.validation'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.validator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.validator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.validator.msv)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.validator.msv ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.verifier)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.iso_relax.verifier
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.verifier.jaxp.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.iso_relax.verifier.jaxp.validation
  </require>
</resource>
<resource id='org.apache.camel.camel-msv/2.0.0.M3' presentationname='camel-msv' symbolicname='org.apache.camel.camel-msv' uri='../org/apache/camel/camel-msv/2.0-M3/camel-msv-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel MSV support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10541
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-msv'/>
    <p n='symbolicname' v='org.apache.camel.camel-msv'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.validator.msv'/>
    <p n='uses' v='org.iso_relax.verifier,org.apache.camel.component.validator,org.iso_relax.verifier.jaxp.validation,javax.xml.validation'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.validator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.validator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.validator.msv)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.validator.msv ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.verifier)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.iso_relax.verifier
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.verifier.jaxp.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.iso_relax.verifier.jaxp.validation
  </require>
</resource>
<resource id='org.apache.camel.camel-msv/2.0.0' presentationname='camel-msv' symbolicname='org.apache.camel.camel-msv' uri='../org/apache/camel/camel-msv/2.0.0/camel-msv-2.0.0.jar' version='2.0.0'>
  <description>
    Camel MSV support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15777
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-msv'/>
    <p n='symbolicname' v='org.apache.camel.camel-msv'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.validator.msv'/>
    <p n='uses' v='org.iso_relax.verifier,org.apache.camel.component.validator,org.iso_relax.verifier.jaxp.validation,javax.xml.validation'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.validator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.validator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.validator.msv)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.validator.msv ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.verifier)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.iso_relax.verifier
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.verifier.jaxp.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.iso_relax.verifier.jaxp.validation
  </require>
</resource>
<resource id='org.apache.camel.camel-jpa/2.0.0.M2' presentationname='camel-jpa' symbolicname='org.apache.camel.camel-jpa' uri='../org/apache/camel/camel-jpa/2.0-M2/camel-jpa-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel JPA support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    46056
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jpa'/>
    <p n='symbolicname' v='org.apache.camel.camel-jpa'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jpa'/>
    <p n='uses' v='org.apache.commons.logging,org.springframework.transaction,org.apache.camel.builder,org.springframework.orm.jpa,org.apache.camel.spi,org.apache.camel,javax.persistence,org.apache.camel.util,org.apache.camel.impl,org.springframework.transaction.support'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.interceptor'/>
    <p n='uses' v='javax.persistence'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.idempotent.jpa'/>
    <p n='uses' v='org.springframework.transaction,org.springframework.orm.jpa,org.apache.camel.spi,javax.persistence,org.springframework.transaction.support'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jpa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jpa
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.idempotent.jpa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.idempotent.jpa
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.interceptor)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.interceptor ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.orm.jpa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.orm.jpa
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.support
  </require>
</resource>
<resource id='org.apache.camel.camel-jpa/2.0.0' presentationname='camel-jpa' symbolicname='org.apache.camel.camel-jpa' uri='../org/apache/camel/camel-jpa/2.0.0/camel-jpa-2.0.0.jar' version='2.0.0'>
  <description>
    Camel JPA support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    51945
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jpa'/>
    <p n='symbolicname' v='org.apache.camel.camel-jpa'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jpa'/>
    <p n='uses' v='org.apache.commons.logging,org.springframework.transaction,org.apache.camel.builder,org.springframework.orm.jpa,org.apache.camel.spi,org.apache.camel,javax.persistence,org.apache.camel.util,org.apache.camel.impl,org.springframework.transaction.support'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.interceptor'/>
    <p n='uses' v='javax.persistence'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.idempotent.jpa'/>
    <p n='uses' v='org.springframework.transaction,org.springframework.orm.jpa,org.apache.camel.spi,javax.persistence,org.springframework.transaction.support'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jpa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jpa
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.idempotent.jpa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.idempotent.jpa
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.interceptor)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.interceptor ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.orm.jpa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.orm.jpa
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.support
  </require>
</resource>
<resource id='org.apache.camel.camel-jpa/1.6.1' presentationname='camel-jpa' symbolicname='org.apache.camel.camel-jpa' uri='../org/apache/camel/camel-jpa/1.6.1/camel-jpa-1.6.1.jar' version='1.6.1'>
  <description>
    Camel JPA support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    40103
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jpa'/>
    <p n='symbolicname' v='org.apache.camel.camel-jpa'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jpa'/>
    <p n='uses' v='org.apache.commons.logging,org.springframework.transaction,org.apache.camel.builder,org.springframework.orm.jpa,org.apache.camel,org.apache.camel.spi,javax.persistence,org.apache.camel.util,org.apache.camel.impl,org.springframework.transaction.support'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.idempotent.jpa'/>
    <p n='uses' v='org.springframework.transaction,org.springframework.orm.jpa,javax.persistence,org.apache.camel.processor.idempotent,org.springframework.transaction.support'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jpa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jpa
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.idempotent)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.idempotent
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.idempotent.jpa)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.idempotent.jpa ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.orm.jpa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.orm.jpa
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.support
  </require>
</resource>
<resource id='org.apache.camel.camel-jpa/2.0.0.M3' presentationname='camel-jpa' symbolicname='org.apache.camel.camel-jpa' uri='../org/apache/camel/camel-jpa/2.0-M3/camel-jpa-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel JPA support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    46734
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jpa'/>
    <p n='symbolicname' v='org.apache.camel.camel-jpa'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jpa'/>
    <p n='uses' v='org.apache.commons.logging,org.springframework.transaction,org.apache.camel.builder,org.springframework.orm.jpa,org.apache.camel.spi,org.apache.camel,javax.persistence,org.apache.camel.util,org.apache.camel.impl,org.springframework.transaction.support'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.interceptor'/>
    <p n='uses' v='javax.persistence'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.processor.idempotent.jpa'/>
    <p n='uses' v='org.springframework.transaction,org.springframework.orm.jpa,org.apache.camel.spi,javax.persistence,org.springframework.transaction.support'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jpa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jpa
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.idempotent.jpa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.idempotent.jpa
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.interceptor)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.interceptor ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.orm.jpa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.orm.jpa
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.support
  </require>
</resource>
<resource id='org.apache.camel.camel-jaxb/2.0.0.M3' presentationname='camel-jaxb' symbolicname='org.apache.camel.camel-jaxb' uri='../org/apache/camel/camel-jaxb/2.0-M3/camel-jaxb-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel JAXB support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    24499
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jaxb'/>
    <p n='symbolicname' v='org.apache.camel.camel-jaxb'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter.jaxb'/>
    <p n='uses' v='org.apache.camel.converter,org.w3c.dom,javax.xml.bind.util,org.apache.commons.logging,javax.xml.bind.annotation,javax.xml.transform,org.apache.camel.converter.jaxp,javax.xml.parsers,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxb)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxb ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-jaxb/2.0.0' presentationname='camel-jaxb' symbolicname='org.apache.camel.camel-jaxb' uri='../org/apache/camel/camel-jaxb/2.0.0/camel-jaxb-2.0.0.jar' version='2.0.0'>
  <description>
    Camel JAXB support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    29459
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jaxb'/>
    <p n='symbolicname' v='org.apache.camel.camel-jaxb'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter.jaxb'/>
    <p n='uses' v='org.apache.camel.converter,org.w3c.dom,javax.xml.bind.util,org.apache.commons.logging,javax.xml.bind.annotation,javax.xml.transform,org.apache.camel.converter.jaxp,javax.xml.parsers,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxb)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxb ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-jaxb/1.6.1' presentationname='camel-jaxb' symbolicname='org.apache.camel.camel-jaxb' uri='../org/apache/camel/camel-jaxb/1.6.1/camel-jaxb-1.6.1.jar' version='1.6.1'>
  <description>
    Camel JAXB support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    24194
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jaxb'/>
    <p n='symbolicname' v='org.apache.camel.camel-jaxb'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter.jaxb'/>
    <p n='uses' v='org.apache.camel.converter,org.w3c.dom,javax.xml.bind.util,org.apache.commons.logging,javax.xml.bind.annotation,javax.xml.transform,org.apache.camel.converter.jaxp,org.apache.camel.converter.stream,javax.xml.parsers,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,javax.xml.bind'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxb)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxb ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-jaxb/2.0.0.M2' presentationname='camel-jaxb' symbolicname='org.apache.camel.camel-jaxb' uri='../org/apache/camel/camel-jaxb/2.0-M2/camel-jaxb-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel JAXB support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    24419
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jaxb'/>
    <p n='symbolicname' v='org.apache.camel.camel-jaxb'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.converter.jaxb'/>
    <p n='uses' v='org.apache.camel.converter,org.w3c.dom,javax.xml.bind.util,org.apache.commons.logging,javax.xml.bind.annotation,javax.xml.transform,org.apache.camel.converter.jaxp,javax.xml.parsers,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxb)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxb ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-hamcrest/1.6.1' presentationname='camel-hamcrest' symbolicname='org.apache.camel.camel-hamcrest' uri='../org/apache/camel/camel-hamcrest/1.6.1/camel-hamcrest-1.6.1.jar' version='1.6.1'>
  <description>
    Camel Hamcrest support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    8217
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-hamcrest'/>
    <p n='symbolicname' v='org.apache.camel.camel-hamcrest'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.hamcrest'/>
    <p n='uses' v='org.hamcrest'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel.hamcrest)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.hamcrest ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest
  </require>
</resource>
<resource id='org.apache.camel.camel-atom/2.0.0.M3' presentationname='camel-atom' symbolicname='org.apache.camel.camel-atom' uri='../org/apache/camel/camel-atom/2.0-M3/camel-atom-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Atom support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22910
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-atom'/>
    <p n='symbolicname' v='org.apache.camel.camel-atom'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.atom'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.abdera,org.apache.commons.logging,org.apache.abdera.parser,org.apache.camel,org.apache.camel.util,org.apache.camel.component.feed,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.feed'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.atom)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.atom ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.feed)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.feed ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-atom/1.6.1' presentationname='camel-atom' symbolicname='org.apache.camel.camel-atom' uri='../org/apache/camel/camel-atom/1.6.1/camel-atom-1.6.1.jar' version='1.6.1'>
  <description>
    Camel Atom support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19505
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-atom'/>
    <p n='symbolicname' v='org.apache.camel.camel-atom'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.atom'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.abdera,org.apache.commons.logging,org.apache.abdera.parser,org.apache.camel,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.atom)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.atom ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-atom/2.0.0' presentationname='camel-atom' symbolicname='org.apache.camel.camel-atom' uri='../org/apache/camel/camel-atom/2.0.0/camel-atom-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Atom support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28394
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-atom'/>
    <p n='symbolicname' v='org.apache.camel.camel-atom'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.atom'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.abdera,org.apache.commons.logging,org.apache.abdera.parser,org.apache.camel,org.apache.camel.util,org.apache.camel.component.feed,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.feed'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.atom)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.atom ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.feed)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.feed ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-atom/2.0.0.M2' presentationname='camel-atom' symbolicname='org.apache.camel.camel-atom' uri='../org/apache/camel/camel-atom/2.0-M2/camel-atom-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Atom support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22919
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-atom'/>
    <p n='symbolicname' v='org.apache.camel.camel-atom'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.atom'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.abdera,org.apache.commons.logging,org.apache.abdera.parser,org.apache.camel,org.apache.camel.util,org.apache.camel.component.feed,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.feed'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.atom)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.atom ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.feed)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.feed ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-example-osgi/2.0.0' presentationname='camel-example-osgi' symbolicname='org.apache.camel.camel-example-osgi' uri='../org/apache/camel/camel-example-osgi/2.0.0/camel-example-osgi-2.0.0.jar' version='2.0.0'>
  <description>
    A simple OSGi example which creates a bundle that can be dropped
    
    
    
    
    
    
    
    
    
    
    
     into
     any
     OSGi
     container
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17107
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-example-osgi'/>
    <p n='symbolicname' v='org.apache.camel.camel-example-osgi'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.example.osgi'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.apache.commons.logging,org.apache.camel.spring'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.example.osgi)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.example.osgi ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-example-osgi/2.0.0.M2' presentationname='camel-example-osgi' symbolicname='org.apache.camel.camel-example-osgi' uri='../org/apache/camel/camel-example-osgi/2.0-M2/camel-example-osgi-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    A simple OSGi example which creates a bundle that can be dropped
    
    
    
    
    
    
    
    
    
    
    
     into
     any
     OSGi
     container
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11783
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-example-osgi'/>
    <p n='symbolicname' v='org.apache.camel.camel-example-osgi'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.example.osgi'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.apache.commons.logging,org.apache.camel.spring'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.example.osgi)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.example.osgi ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-example-osgi/2.0.0.M3' presentationname='camel-example-osgi' symbolicname='org.apache.camel.camel-example-osgi' uri='../org/apache/camel/camel-example-osgi/2.0-M3/camel-example-osgi-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    A simple OSGi example which creates a bundle that can be dropped
    
    
    
    
    
    
    
    
    
    
    
     into
     any
     OSGi
     container
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11783
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-example-osgi'/>
    <p n='symbolicname' v='org.apache.camel.camel-example-osgi'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.example.osgi'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.apache.commons.logging,org.apache.camel.spring'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.example.osgi)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.example.osgi ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-example-osgi/1.6.1' presentationname='camel-example-osgi' symbolicname='org.apache.camel.camel-example-osgi' uri='../org/apache/camel/camel-example-osgi/1.6.1/camel-example-osgi-1.6.1.jar' version='1.6.1'>
  <description>
    A simple OSGi example which creates a bundle that can be dropped
    
    
    
    
    
    
    
    
    
    
    
     into
     any
     OSGi
     container
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10926
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-example-osgi'/>
    <p n='symbolicname' v='org.apache.camel.camel-example-osgi'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.example.osgi'/>
    <p n='uses' v='org.apache.commons.logging'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel.example.osgi)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.example.osgi ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-test/2.0.0.M2' presentationname='camel-test' symbolicname='org.apache.camel.camel-test' uri='../org/apache/camel/camel-test/2.0-M2/camel-test-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Testing Library
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19017
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-test'/>
    <p n='symbolicname' v='org.apache.camel.camel-test'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.test'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.camel.processor,org.apache.camel.component.mock,javax.naming,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,junit.framework,org.apache.camel.util,org.apache.camel.spring,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mock
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.test)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.test ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-test/2.0.0' presentationname='camel-test' symbolicname='org.apache.camel.camel-test' uri='../org/apache/camel/camel-test/2.0.0/camel-test-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Testing Library
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    42401
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-test'/>
    <p n='symbolicname' v='org.apache.camel.camel-test'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.test'/>
    <p n='uses' v='org.apache.commons.logging,org.springframework.context,org.springframework.context.support,org.apache.camel.impl.scan,org.apache.camel.processor,org.apache.camel.component.mock,org.springframework.beans.factory.support,javax.naming,org.springframework.beans.factory.config,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,junit.framework,org.apache.camel.util,org.apache.camel.spring,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.test.junit4'/>
    <p n='uses' v='org.junit,org.apache.commons.logging,org.springframework.context,org.springframework.context.support,org.apache.camel.impl.scan,org.apache.camel.processor,org.apache.camel.component.mock,org.springframework.beans.factory.support,javax.naming,org.springframework.beans.factory.config,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.spring,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mock
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.scan)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl.scan
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.test)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.test ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.test.junit4)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.test.junit4 ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
</resource>
<resource id='org.apache.camel.camel-test/2.0.0.M3' presentationname='camel-test' symbolicname='org.apache.camel.camel-test' uri='../org/apache/camel/camel-test/2.0-M3/camel-test-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Testing Library
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    37262
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-test'/>
    <p n='symbolicname' v='org.apache.camel.camel-test'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.test'/>
    <p n='uses' v='org.apache.commons.logging,org.springframework.context,org.springframework.context.support,org.apache.camel.impl.scan,org.apache.camel.processor,org.apache.camel.component.mock,org.springframework.beans.factory.support,javax.naming,org.springframework.beans.factory.config,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,junit.framework,org.apache.camel.util,org.apache.camel.spring,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.test.junit4'/>
    <p n='uses' v='org.junit,org.apache.commons.logging,org.springframework.context,org.springframework.context.support,org.apache.camel.impl.scan,org.apache.camel.processor,org.apache.camel.component.mock,org.springframework.beans.factory.support,javax.naming,org.springframework.beans.factory.config,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.spring,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mock
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.scan)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl.scan
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.test)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.test ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.test.junit4)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.test.junit4 ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
</resource>
<resource id='org.apache.camel.camel-jms/2.0.0.M2' presentationname='camel-jms' symbolicname='org.apache.camel.camel-jms' uri='../org/apache/camel/camel-jms/2.0-M2/camel-jms-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel JMS support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    107099
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jms'/>
    <p n='symbolicname' v='org.apache.camel.camel-jms'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jms.requestor'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.camel.component.jms,org.apache.commons.logging,org.springframework.transaction,org.springframework.jms.support.destination,org.apache.camel,org.apache.camel.util,org.springframework.core.task,org.apache.camel.impl,javax.jms'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.springframework.jms.support,org.springframework.jms,org.apache.camel.util,org.apache.camel.impl,org.springframework.jms.connection,org.apache.camel.component.jms.requestor,org.apache.camel.component.file,org.apache.camel.converter,org.w3c.dom,org.apache.commons.logging,org.springframework.context,org.springframework.transaction,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.camel.spi,org.apache.camel,org.springframework.core.task,org.springframework.beans,org.springframework.util,javax.jms'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms.requestor)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms.requestor ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-jms/1.6.1' presentationname='camel-jms' symbolicname='org.apache.camel.camel-jms' uri='../org/apache/camel/camel-jms/1.6.1/camel-jms-1.6.1.jar' version='1.6.1'>
  <description>
    Camel JMS support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    99387
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jms'/>
    <p n='symbolicname' v='org.apache.camel.camel-jms'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jms.requestor'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.camel.component.jms,org.apache.commons.logging,org.springframework.transaction,org.springframework.jms.support.destination,org.apache.camel,org.apache.camel.util,org.springframework.core.task,org.apache.camel.impl,javax.jms'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.listener.serversession,org.springframework.jms.core,org.springframework.jms,org.springframework.jms.support,javax.xml.transform,org.apache.camel.converter.jaxp,org.apache.camel.util,org.apache.camel.impl,org.springframework.jms.connection,org.apache.camel.component.jms.requestor,org.apache.camel.converter,org.w3c.dom,org.apache.commons.logging,org.springframework.context,org.springframework.transaction,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.camel,org.apache.camel.spi,org.springframework.core.task,org.springframework.beans,org.springframework.util,javax.jms'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms.requestor)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms.requestor ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener.serversession)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.listener.serversession
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-jms/2.0.0' presentationname='camel-jms' symbolicname='org.apache.camel.camel-jms' uri='../org/apache/camel/camel-jms/2.0.0/camel-jms-2.0.0.jar' version='2.0.0'>
  <description>
    Camel JMS support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    117706
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jms'/>
    <p n='symbolicname' v='org.apache.camel.camel-jms'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jms.requestor'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.camel.component.jms,org.apache.commons.logging,org.springframework.transaction,org.springframework.jms.support.destination,org.apache.camel,org.apache.camel.util,org.springframework.core.task,org.apache.camel.impl,javax.jms'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.springframework.jms,org.springframework.jms.support,org.apache.camel.util,org.apache.camel.impl,org.springframework.jms.connection,org.apache.camel.component.jms.requestor,org.apache.camel.component.file,org.apache.camel.converter,org.w3c.dom,org.apache.commons.logging,org.springframework.context,org.springframework.transaction,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.camel.spi,org.apache.camel,org.springframework.core.task,org.springframework.beans,org.springframework.util,javax.jms'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms.requestor)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms.requestor ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-jms/2.0.0.M3' presentationname='camel-jms' symbolicname='org.apache.camel.camel-jms' uri='../org/apache/camel/camel-jms/2.0-M3/camel-jms-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel JMS support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    111736
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-jms'/>
    <p n='symbolicname' v='org.apache.camel.camel-jms'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jms.requestor'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.camel.component.jms,org.apache.commons.logging,org.springframework.transaction,org.springframework.jms.support.destination,org.apache.camel,org.apache.camel.util,org.springframework.core.task,org.apache.camel.impl,javax.jms'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.jms'/>
    <p n='uses' v='org.springframework.jms.listener,org.springframework.jms.core,org.springframework.jms,org.springframework.jms.support,org.apache.camel.util,org.apache.camel.impl,org.springframework.jms.connection,org.apache.camel.component.jms.requestor,org.apache.camel.component.file,org.apache.camel.converter,org.w3c.dom,org.apache.commons.logging,org.springframework.context,org.springframework.transaction,org.springframework.jms.support.converter,org.springframework.jms.support.destination,org.apache.camel.spi,org.apache.camel,org.springframework.core.task,org.springframework.beans,org.springframework.util,javax.jms'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.file)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.file
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.jms.requestor)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.jms.requestor ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.connection
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.core
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support.destination
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-flatpack/1.6.1' presentationname='camel-flatpack' symbolicname='org.apache.camel.camel-flatpack' uri='../org/apache/camel/camel-flatpack/1.6.1/camel-flatpack-1.6.1.jar' version='1.6.1'>
  <description>
    Camel FlatPack support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    21558
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-flatpack'/>
    <p n='symbolicname' v='org.apache.camel.camel-flatpack'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.flatpack'/>
    <p n='uses' v='org.apache.commons.logging,org.jdom,org.apache.camel.component,org.apache.camel.processor.loadbalancer,net.sf.flatpack,net.sf.flatpack.writer,org.springframework.core.io,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=net.sf.flatpack)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.flatpack
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.flatpack.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.flatpack.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.flatpack)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.flatpack ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-flatpack/2.0.0.M3' presentationname='camel-flatpack' symbolicname='org.apache.camel.camel-flatpack' uri='../org/apache/camel/camel-flatpack/2.0-M3/camel-flatpack-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel FlatPack support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    21405
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-flatpack'/>
    <p n='symbolicname' v='org.apache.camel.camel-flatpack'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.flatpack'/>
    <p n='uses' v='org.apache.commons.logging,org.jdom,org.apache.camel.component,org.apache.camel.processor.loadbalancer,net.sf.flatpack,net.sf.flatpack.writer,org.springframework.core.io,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=net.sf.flatpack)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.flatpack
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.flatpack.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.flatpack.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.flatpack)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.flatpack ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-flatpack/2.0.0' presentationname='camel-flatpack' symbolicname='org.apache.camel.camel-flatpack' uri='../org/apache/camel/camel-flatpack/2.0.0/camel-flatpack-2.0.0.jar' version='2.0.0'>
  <description>
    Camel FlatPack support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26677
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-flatpack'/>
    <p n='symbolicname' v='org.apache.camel.camel-flatpack'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.flatpack'/>
    <p n='uses' v='org.apache.commons.logging,org.jdom,org.apache.camel.component,org.apache.camel.processor.loadbalancer,net.sf.flatpack,net.sf.flatpack.writer,org.springframework.core.io,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=net.sf.flatpack)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.flatpack
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.flatpack.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.flatpack.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.flatpack)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.flatpack ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-flatpack/2.0.0.M2' presentationname='camel-flatpack' symbolicname='org.apache.camel.camel-flatpack' uri='../org/apache/camel/camel-flatpack/2.0-M2/camel-flatpack-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel FlatPack support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    21412
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-flatpack'/>
    <p n='symbolicname' v='org.apache.camel.camel-flatpack'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.flatpack'/>
    <p n='uses' v='org.apache.commons.logging,org.jdom,org.apache.camel.component,org.apache.camel.processor.loadbalancer,net.sf.flatpack,net.sf.flatpack.writer,org.springframework.core.io,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=net.sf.flatpack)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.flatpack
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.flatpack.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.flatpack.writer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.flatpack)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.flatpack ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.processor.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.processor.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-ldap/1.6.1' presentationname='camel-ldap' symbolicname='org.apache.camel.camel-ldap' uri='../org/apache/camel/camel-ldap/1.6.1/camel-ldap-1.6.1.jar' version='1.6.1'>
  <description>
    Camel LDAP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13496
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ldap'/>
    <p n='symbolicname' v='org.apache.camel.camel-ldap'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.ldap'/>
    <p n='uses' v='javax.naming.directory,javax.naming,org.apache.camel.spi,org.apache.camel,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.directory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.directory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.ldap)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.ldap ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-ldap/2.0.0.M3' presentationname='camel-ldap' symbolicname='org.apache.camel.camel-ldap' uri='../org/apache/camel/camel-ldap/2.0-M3/camel-ldap-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel LDAP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13124
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ldap'/>
    <p n='symbolicname' v='org.apache.camel.camel-ldap'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.ldap'/>
    <p n='uses' v='javax.naming,javax.naming.directory,org.apache.camel.spi,org.apache.camel,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.directory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.directory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.ldap)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.ldap ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
</resource>
<resource id='org.apache.camel.camel-ldap/2.0.0' presentationname='camel-ldap' symbolicname='org.apache.camel.camel-ldap' uri='../org/apache/camel/camel-ldap/2.0.0/camel-ldap-2.0.0.jar' version='2.0.0'>
  <description>
    Camel LDAP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18091
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ldap'/>
    <p n='symbolicname' v='org.apache.camel.camel-ldap'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.ldap'/>
    <p n='uses' v='javax.naming,javax.naming.directory,org.apache.camel.spi,org.apache.camel,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.directory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.directory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.ldap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.ldap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
</resource>
<resource id='org.apache.camel.camel-ldap/2.0.0.M2' presentationname='camel-ldap' symbolicname='org.apache.camel.camel-ldap' uri='../org/apache/camel/camel-ldap/2.0-M2/camel-ldap-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel LDAP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13125
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ldap'/>
    <p n='symbolicname' v='org.apache.camel.camel-ldap'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.ldap'/>
    <p n='uses' v='javax.naming,javax.naming.directory,org.apache.camel.spi,org.apache.camel,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.directory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.directory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.ldap)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.ldap ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
</resource>
<resource id='org.apache.camel.camel-servlet/2.0.0' presentationname='camel-servlet' symbolicname='org.apache.camel.camel-servlet' uri='../org/apache/camel/camel-servlet/2.0.0/camel-servlet-2.0.0.jar' version='2.0.0'>
  <description>
    Camel servlet transport support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19122
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-servlet'/>
    <p n='symbolicname' v='org.apache.camel.camel-servlet'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.servlet'/>
    <p n='uses' v='org.apache.commons.httpclient.params,org.apache.commons.logging,org.springframework.context.support,org.apache.commons.httpclient,javax.servlet,org.apache.camel,org.apache.camel.component.http,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.servlet)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.servlet ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.params)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.params
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
</resource>
<resource id='org.apache.camel.camel-servlet/2.0.0.M3' presentationname='camel-servlet' symbolicname='org.apache.camel.camel-servlet' uri='../org/apache/camel/camel-servlet/2.0-M3/camel-servlet-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel servlet transport support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13450
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-servlet'/>
    <p n='symbolicname' v='org.apache.camel.camel-servlet'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.servlet'/>
    <p n='uses' v='org.apache.commons.httpclient,org.apache.commons.httpclient.params,javax.servlet,org.apache.camel,org.apache.camel.component.http,org.apache.camel.util,org.apache.commons.logging'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.servlet)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.servlet ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.params)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.params
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-ibatis/2.0.0.M3' presentationname='camel-ibatis' symbolicname='org.apache.camel.camel-ibatis' uri='../org/apache/camel/camel-ibatis/2.0-M3/camel-ibatis-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel iBatis support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    23276
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ibatis'/>
    <p n='symbolicname' v='org.apache.camel.camel-ibatis'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.ibatis.strategy'/>
    <p n='uses' v='org.apache.camel.component.ibatis,org.apache.camel,com.ibatis.sqlmap.client'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.ibatis'/>
    <p n='uses' v='org.apache.camel.component.ibatis.strategy,org.springframework.core.io,org.apache.camel,com.ibatis.sqlmap.client,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.component'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.ibatis)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.ibatis ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.ibatis.strategy)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.ibatis.strategy ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-ibatis/2.0.0' presentationname='camel-ibatis' symbolicname='org.apache.camel.camel-ibatis' uri='../org/apache/camel/camel-ibatis/2.0.0/camel-ibatis-2.0.0.jar' version='2.0.0'>
  <description>
    Camel iBatis support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28426
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ibatis'/>
    <p n='symbolicname' v='org.apache.camel.camel-ibatis'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.ibatis.strategy'/>
    <p n='uses' v='org.apache.camel.component.ibatis,org.apache.camel,com.ibatis.sqlmap.client'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.ibatis'/>
    <p n='uses' v='org.apache.camel.component.ibatis.strategy,org.springframework.core.io,org.apache.camel,com.ibatis.sqlmap.client,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.component'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.ibatis)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.ibatis ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.ibatis.strategy)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.ibatis.strategy ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-ibatis/1.6.1' presentationname='camel-ibatis' symbolicname='org.apache.camel.camel-ibatis' uri='../org/apache/camel/camel-ibatis/1.6.1/camel-ibatis-1.6.1.jar' version='1.6.1'>
  <description>
    Camel iBatis support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17269
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ibatis'/>
    <p n='symbolicname' v='org.apache.camel.camel-ibatis'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.ibatis'/>
    <p n='uses' v='org.springframework.core.io,org.apache.camel,com.ibatis.sqlmap.client,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.ibatis)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.ibatis ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-ibatis/2.0.0.M2' presentationname='camel-ibatis' symbolicname='org.apache.camel.camel-ibatis' uri='../org/apache/camel/camel-ibatis/2.0-M2/camel-ibatis-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel iBatis support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    23284
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-ibatis'/>
    <p n='symbolicname' v='org.apache.camel.camel-ibatis'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.ibatis.strategy'/>
    <p n='uses' v='org.apache.camel.component.ibatis,org.apache.camel,com.ibatis.sqlmap.client'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.ibatis'/>
    <p n='uses' v='org.apache.camel.component.ibatis.strategy,org.springframework.core.io,org.apache.camel,com.ibatis.sqlmap.client,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.apache.camel.component'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.ibatis)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.ibatis ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.ibatis.strategy)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.ibatis.strategy ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
</resource>
<resource id='org.apache.camel.camel-groovy/2.0.0' presentationname='camel-groovy' symbolicname='org.apache.camel.camel-groovy' uri='../org/apache/camel/camel-groovy/2.0.0/camel-groovy-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Groovy support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    21807
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-groovy'/>
    <p n='symbolicname' v='org.apache.camel.camel-groovy'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.groovy'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,groovy.lang,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=groovy.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package groovy.lang
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.groovy)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.groovy ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
</resource>
<resource id='org.apache.camel.camel-groovy/2.0.0.M3' presentationname='camel-groovy' symbolicname='org.apache.camel.camel-groovy' uri='../org/apache/camel/camel-groovy/2.0-M3/camel-groovy-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Groovy support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16557
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-groovy'/>
    <p n='symbolicname' v='org.apache.camel.camel-groovy'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.groovy'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,groovy.lang,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=groovy.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package groovy.lang
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.groovy)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.groovy ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
</resource>
<resource id='org.apache.camel.camel-groovy/2.0.0.M2' presentationname='camel-groovy' symbolicname='org.apache.camel.camel-groovy' uri='../org/apache/camel/camel-groovy/2.0-M2/camel-groovy-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Groovy support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16545
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-groovy'/>
    <p n='symbolicname' v='org.apache.camel.camel-groovy'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.groovy'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,groovy.lang,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=groovy.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package groovy.lang
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.groovy)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.groovy ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
</resource>
<resource id='org.apache.camel.camel-groovy/1.6.1' presentationname='camel-groovy' symbolicname='org.apache.camel.camel-groovy' uri='../org/apache/camel/camel-groovy/1.6.1/camel-groovy-1.6.1.jar' version='1.6.1'>
  <description>
    Camel Groovy support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16131
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-groovy'/>
    <p n='symbolicname' v='org.apache.camel.camel-groovy'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.language.groovy'/>
    <p n='uses' v='org.apache.camel.model,org.apache.camel.builder,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,groovy.lang,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=groovy.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package groovy.lang
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language.groovy)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language.groovy ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
</resource>
<resource id='org.apache.camel.camel-http/2.0.0' presentationname='camel-http' symbolicname='org.apache.camel.camel-http' uri='../org/apache/camel/camel-http/2.0.0/camel-http-2.0.0.jar' version='2.0.0'>
  <description>
    Camel HTTP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    47972
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-http'/>
    <p n='symbolicname' v='org.apache.camel.camel-http'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.commons.httpclient.params,org.apache.commons.httpclient.auth,org.apache.commons.logging,org.apache.camel.component.http.helper,org.apache.commons.httpclient,org.apache.camel.converter.stream,org.apache.commons.httpclient.methods,javax.servlet,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.http.helper'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.apache.commons.logging'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.http)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.http ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.http.helper)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.http.helper ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient)(version&gt;=3.1.0)(!(version&gt;=4.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient ;version=[3.1.0,4.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.auth)(version&gt;=3.1.0)(!(version&gt;=4.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.auth ;version=[3.1.0,4.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.methods)(version&gt;=3.1.0)(!(version&gt;=4.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.methods ;version=[3.1.0,4.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.params)(version&gt;=3.1.0)(!(version&gt;=4.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.params ;version=[3.1.0,4.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-http/2.0.0.M2' presentationname='camel-http' symbolicname='org.apache.camel.camel-http' uri='../org/apache/camel/camel-http/2.0-M2/camel-http-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel HTTP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    43363
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-http'/>
    <p n='symbolicname' v='org.apache.camel.camel-http'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.commons.httpclient.params,org.apache.commons.httpclient.auth,org.apache.commons.logging,org.apache.camel.component.http.helper,org.apache.commons.httpclient,org.apache.camel.converter.stream,org.apache.commons.httpclient.methods,javax.servlet,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.commons.io,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.http.helper'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.apache.commons.logging'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.http)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.http ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.http.helper)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.http.helper ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.methods)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.methods
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.params)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.params
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-http/1.6.1' presentationname='camel-http' symbolicname='org.apache.camel.camel-http' uri='../org/apache/camel/camel-http/1.6.1/camel-http-1.6.1.jar' version='1.6.1'>
  <description>
    Camel HTTP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    39034
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-http'/>
    <p n='symbolicname' v='org.apache.camel.camel-http'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.commons.httpclient.params,org.apache.commons.httpclient.auth,org.apache.commons.logging,org.apache.camel.component.http.helper,org.apache.commons.httpclient,org.apache.camel.converter.stream,org.apache.commons.httpclient.methods,javax.servlet,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.commons.io,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.http.helper'/>
    <p n='uses' v='org.apache.commons.httpclient,javax.servlet.http,javax.servlet,org.apache.camel'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.http)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.http ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.http.helper)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.http.helper ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.methods)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.methods
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.params)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.params
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-http/2.0.0.M3' presentationname='camel-http' symbolicname='org.apache.camel.camel-http' uri='../org/apache/camel/camel-http/2.0-M3/camel-http-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel HTTP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    42555
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-http'/>
    <p n='symbolicname' v='org.apache.camel.camel-http'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.commons.httpclient.params,org.apache.commons.httpclient.auth,org.apache.commons.logging,org.apache.camel.component.http.helper,org.apache.commons.httpclient,org.apache.camel.converter.stream,org.apache.commons.httpclient.methods,javax.servlet,org.apache.camel.builder,org.apache.camel,org.apache.camel.spi,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.http.helper'/>
    <p n='uses' v='org.apache.camel,org.apache.camel.util,org.apache.commons.logging'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.http)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.http ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.http.helper)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.http.helper ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.methods)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.methods
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.params)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.params
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.camel.camel-xmpp/2.0.0.M2' presentationname='camel-xmpp' symbolicname='org.apache.camel.camel-xmpp' uri='../org/apache/camel/camel-xmpp/2.0-M2/camel-xmpp-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel XMPP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    25690
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-xmpp'/>
    <p n='symbolicname' v='org.apache.camel.camel-xmpp'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.xmpp'/>
    <p n='uses' v='org.jivesoftware.smack.packet,org.jivesoftware.smack,org.apache.commons.logging,org.jivesoftware.smack.filter,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.camel.impl,org.jivesoftware.smackx.muc'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.xmpp)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.xmpp ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.filter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.filter
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.packet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.packet
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.muc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.muc
  </require>
</resource>
<resource id='org.apache.camel.camel-xmpp/1.6.1' presentationname='camel-xmpp' symbolicname='org.apache.camel.camel-xmpp' uri='../org/apache/camel/camel-xmpp/1.6.1/camel-xmpp-1.6.1.jar' version='1.6.1'>
  <description>
    Camel XMPP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    25516
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-xmpp'/>
    <p n='symbolicname' v='org.apache.camel.camel-xmpp'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.xmpp'/>
    <p n='uses' v='org.jivesoftware.smack.packet,org.apache.camel,org.apache.camel.spi,org.jivesoftware.smack,org.apache.camel.util,org.apache.commons.logging,org.apache.camel.impl,org.jivesoftware.smackx.muc'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.xmpp)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.xmpp ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.packet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.packet
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.muc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.muc
  </require>
</resource>
<resource id='org.apache.camel.camel-xmpp/2.0.0' presentationname='camel-xmpp' symbolicname='org.apache.camel.camel-xmpp' uri='../org/apache/camel/camel-xmpp/2.0.0/camel-xmpp-2.0.0.jar' version='2.0.0'>
  <description>
    Camel XMPP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    30330
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-xmpp'/>
    <p n='symbolicname' v='org.apache.camel.camel-xmpp'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.xmpp'/>
    <p n='uses' v='org.jivesoftware.smack.packet,org.jivesoftware.smack,org.apache.commons.logging,org.jivesoftware.smack.filter,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.camel.impl,org.jivesoftware.smackx.muc'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.xmpp)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.xmpp ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.filter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.filter
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.packet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.packet
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.muc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.muc
  </require>
</resource>
<resource id='org.apache.camel.camel-xmpp/2.0.0.M3' presentationname='camel-xmpp' symbolicname='org.apache.camel.camel-xmpp' uri='../org/apache/camel/camel-xmpp/2.0-M3/camel-xmpp-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel XMPP support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    24647
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-xmpp'/>
    <p n='symbolicname' v='org.apache.camel.camel-xmpp'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.xmpp'/>
    <p n='uses' v='org.jivesoftware.smack.packet,org.jivesoftware.smack,org.apache.commons.logging,org.jivesoftware.smack.filter,org.apache.camel.spi,org.apache.camel,org.apache.camel.util,org.apache.camel.impl,org.jivesoftware.smackx.muc'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.xmpp)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.xmpp ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.filter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.filter
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.packet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.packet
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.muc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.muc
  </require>
</resource>
<resource id='org.apache.camel.camel-osgi/2.0.0.M3' presentationname='camel-osgi' symbolicname='org.apache.camel.camel-osgi' uri='../org/apache/camel/camel-osgi/2.0-M3/camel-osgi-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel OSGi support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    37502
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-osgi'/>
    <p n='symbolicname' v='org.apache.camel.camel-osgi'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.osgi'/>
    <p n='uses' v='org.apache.camel.model.loadbalancer,org.osgi.framework,org.apache.camel.impl.converter,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.spring.handler,org.apache.commons.logging,org.apache.camel.model.config,javax.xml.bind.annotation,org.apache.camel.model.dataformat,org.springframework.osgi.util,org.apache.camel.model.language,org.springframework.osgi.context,org.apache.camel.model,org.springframework.beans.factory.xml,org.apache.camel.spi,org.apache.camel,org.apache.camel.spring'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.dataformat)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.dataformat
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.osgi)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.osgi ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util
  </require>
</resource>
<resource id='org.apache.camel.camel-osgi/2.0.0' presentationname='camel-osgi' symbolicname='org.apache.camel.camel-osgi' uri='../org/apache/camel/camel-osgi/2.0.0/camel-osgi-2.0.0.jar' version='2.0.0'>
  <description>
    Camel OSGi support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    42700
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-osgi'/>
    <p n='symbolicname' v='org.apache.camel.camel-osgi'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.osgi'/>
    <p n='uses' v='org.apache.camel.model.loadbalancer,org.osgi.framework,org.apache.camel.impl.converter,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.spring.handler,org.apache.commons.logging,org.apache.camel.model.config,javax.xml.bind.annotation,org.apache.camel.model.dataformat,org.springframework.osgi.util,org.apache.camel.model.language,org.springframework.osgi.context,org.apache.camel.model,org.springframework.beans.factory.xml,org.apache.camel.spi,org.apache.camel,org.apache.camel.spring'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.dataformat)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.dataformat
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.osgi)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.osgi ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util
  </require>
</resource>
<resource id='org.apache.camel.camel-osgi/1.6.1' presentationname='camel-osgi' symbolicname='org.apache.camel.camel-osgi' uri='../org/apache/camel/camel-osgi/1.6.1/camel-osgi-1.6.1.jar' version='1.6.1'>
  <description>
    Camel OSGi support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    32998
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-osgi'/>
    <p n='symbolicname' v='org.apache.camel.camel-osgi'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.osgi'/>
    <p n='uses' v='org.apache.camel.model.loadbalancer,org.osgi.framework,org.apache.camel.impl.converter,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.spring.handler,org.apache.commons.logging,org.apache.camel.model.config,javax.xml.bind.annotation,org.apache.camel.model.dataformat,org.springframework.osgi.util,org.apache.camel.model.language,org.springframework.osgi.context,org.apache.camel.model,org.springframework.beans.factory.xml,org.apache.camel.spi,org.apache.camel,org.apache.camel.spring,javax.xml.bind'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.dataformat)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.dataformat
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.osgi)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.osgi ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util
  </require>
</resource>
<resource id='org.apache.camel.camel-osgi/2.0.0.M2' presentationname='camel-osgi' symbolicname='org.apache.camel.camel-osgi' uri='../org/apache/camel/camel-osgi/2.0-M2/camel-osgi-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel OSGi support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    33399
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-osgi'/>
    <p n='symbolicname' v='org.apache.camel.camel-osgi'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.osgi'/>
    <p n='uses' v='org.apache.camel.model.loadbalancer,org.osgi.framework,org.apache.camel.impl.converter,org.apache.camel.util,org.apache.camel.impl,org.apache.camel.spring.handler,org.apache.commons.logging,org.apache.camel.model.config,javax.xml.bind.annotation,org.apache.camel.model.dataformat,org.springframework.osgi.util,org.apache.camel.model.language,org.springframework.osgi.context,org.apache.camel.model,org.springframework.beans.factory.xml,org.apache.camel.spi,org.apache.camel,org.apache.camel.spring'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.dataformat)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.dataformat
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.model.loadbalancer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.model.loadbalancer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.osgi)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.osgi ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util
  </require>
</resource>
<resource id='org.apache.camel.camel-cxf/2.0.0.M3' presentationname='camel-cxf' symbolicname='org.apache.camel.camel-cxf' uri='../org/apache/camel/camel-cxf/2.0-M3/camel-cxf-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel CXF support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    187943
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-cxf'/>
    <p n='symbolicname' v='org.apache.camel.camel-cxf'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.cxfbean'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.commons.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,org.apache.camel.spi,org.apache.camel,org.apache.cxf.jaxrs,org.apache.cxf,org.apache.camel.component.cxf,org.apache.camel.util,org.apache.camel.component.cxf.transport,org.apache.camel.impl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.camel.component.cxf.interceptors,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.interceptors'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.camel.util,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.w3c.dom,org.apache.commons.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf.staxutils,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.soap.headers'/>
    <p n='uses' v='javax.jws.soap,javax.xml.namespace,javax.jws,javax.xml.bind,javax.xml.bind.annotation,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.converter'/>
    <p n='uses' v='org.apache.commons.logging,org.springframework.context,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.common.classloader,org.apache.camel,org.apache.camel.spi,org.apache.camel.component.cxf,org.apache.camel.spring,org.apache.camel.component.cxf.spring'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,javax.xml.transform,org.apache.cxf.service.factory,org.apache.camel.converter.jaxp,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.camel.util,org.apache.camel.component.cxf,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.classloader,org.apache.camel,org.apache.camel.spi,javax.jws,org.apache.cxf.io,org.apache.cxf,org.apache.camel.component.cxf.spring,org.apache.cxf.staxutils,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf'/>
    <p n='uses' v='org.apache.cxf.headers,javax.xml.ws.handler,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.frontend,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.springframework.core.io,org.apache.camel.util,org.apache.camel.impl,javax.xml.ws,org.apache.cxf.databinding,org.apache.cxf.endpoint,javax.wsdl.xml,org.apache.cxf.common.classloader,org.apache.camel,org.apache.camel.component.cxf.spring,org.apache.cxf.configuration.spring,org.apache.cxf.wsdl11,org.apache.camel.component.cxf.feature,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.service,javax.wsdl,org.apache.camel.component.cxf.util,org.w3c.dom,org.apache.commons.logging,org.apache.cxf.service.model,org.springframework.context,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.camel.spi,org.apache.cxf.io,org.apache.cxf,org.apache.camel.spring,org.springframework.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.transport.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.camel.util,org.springframework.beans,org.apache.camel.component.cxf.transport,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.spring'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.xml.namespace,org.w3c.dom,org.apache.cxf.frontend,org.apache.cxf.jaxrs.client,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.service.factory,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.jaxrs,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.util,org.apache.camel.component.cxf.jaxrs,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.transport'/>
    <p n='uses' v='org.apache.camel.component.cxf.util,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.message,javax.annotation,org.apache.camel.spi,org.apache.camel,org.apache.cxf.io,org.apache.cxf,org.apache.camel.component.cxf,org.apache.cxf.ws.addressing,org.apache.camel.impl,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.service.invoker,org.apache.commons.logging,org.apache.cxf.jaxrs.client,org.springframework.context,org.springframework.context.support,javax.ws.rs,org.apache.cxf.jaxrs.model,org.apache.cxf.message,javax.ws.rs.core,org.apache.camel,org.apache.camel.spi,org.apache.cxf.jaxrs,org.apache.camel.spring,org.apache.camel.util,org.apache.cxf.configuration.spring,org.apache.camel.component.cxf.spring,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.core
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.converter)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.converter ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.cxfbean)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.cxfbean ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.feature)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.feature ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.interceptors)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.interceptors
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.jaxrs)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.jaxrs ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.soap.headers)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.soap.headers
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.spring)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.spring ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.transport)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.transport ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.transport.spring)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.transport.spring
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.util)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.util ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-cxf/2.0.0' presentationname='camel-cxf' symbolicname='org.apache.camel.camel-cxf' uri='../org/apache/camel/camel-cxf/2.0.0/camel-cxf-2.0.0.jar' version='2.0.0'>
  <description>
    Camel CXF support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    198263
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-cxf'/>
    <p n='symbolicname' v='org.apache.camel.camel-cxf'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.cxfbean'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.commons.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,org.apache.camel.spi,org.apache.camel,org.apache.cxf.jaxrs,org.apache.cxf,org.apache.camel.component.cxf,org.apache.camel.util,org.apache.camel.component.cxf.transport,org.apache.camel.impl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.camel.component.cxf.interceptors,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.interceptors'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.camel.util,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.w3c.dom,org.apache.commons.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf.staxutils,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.soap.headers'/>
    <p n='uses' v='javax.jws.soap,javax.xml.namespace,javax.jws,javax.xml.bind,javax.xml.bind.annotation,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.converter'/>
    <p n='uses' v='org.apache.commons.logging,org.springframework.context,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.common.classloader,javax.ws.rs.core,org.apache.camel,org.apache.camel.spi,org.apache.camel.component.cxf,org.apache.camel.spring,org.apache.camel.component.cxf.spring'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,javax.xml.transform,org.apache.cxf.service.factory,org.apache.camel.converter.jaxp,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.camel.util,org.apache.camel.component.cxf,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.classloader,org.apache.camel,org.apache.camel.spi,javax.jws,org.apache.cxf.io,org.apache.cxf,org.apache.camel.component.cxf.spring,org.apache.cxf.staxutils,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf'/>
    <p n='uses' v='org.apache.cxf.headers,javax.xml.ws.handler,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.frontend,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.springframework.core.io,org.apache.camel.util,org.apache.camel.impl,javax.xml.ws,org.apache.cxf.databinding,org.apache.cxf.endpoint,javax.wsdl.xml,org.apache.cxf.common.classloader,org.apache.camel,org.apache.camel.component.cxf.spring,org.apache.cxf.configuration.spring,org.apache.cxf.wsdl11,org.apache.camel.component.cxf.feature,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.service,javax.wsdl,org.apache.camel.component.cxf.util,org.w3c.dom,org.apache.commons.logging,org.apache.cxf.service.model,org.springframework.context,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.camel.spi,org.apache.cxf.io,org.apache.cxf,org.apache.camel.spring,org.springframework.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.transport.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.camel.util,org.springframework.beans,org.apache.camel.component.cxf.transport,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.spring'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.xml.namespace,org.w3c.dom,org.apache.cxf.frontend,org.apache.cxf.jaxrs.client,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.service.factory,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.jaxrs,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.util,org.apache.camel.component.cxf.jaxrs,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.transport'/>
    <p n='uses' v='org.apache.camel.component.cxf.util,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.message,javax.annotation,org.apache.camel.spi,org.apache.camel,org.apache.cxf.io,org.apache.cxf,org.apache.camel.component.cxf,org.apache.cxf.ws.addressing,org.apache.camel.impl,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.service.invoker,org.springframework.context.support,org.apache.cxf.message,org.apache.cxf.jaxrs.model,org.apache.cxf.jaxrs.impl,org.apache.camel.util,org.apache.camel.impl,org.apache.cxf.endpoint,org.apache.commons.logging,org.apache.cxf.jaxrs.client,org.springframework.context,javax.ws.rs,javax.ws.rs.core,org.apache.camel.spi,org.apache.camel,org.apache.cxf.jaxrs,org.apache.camel.spring,org.apache.camel.component.cxf.spring,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.core
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.converter)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.converter ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.cxfbean)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.cxfbean ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.feature)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.feature ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.interceptors)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.interceptors
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.jaxrs)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.jaxrs ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.soap.headers)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.soap.headers
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.spring)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.spring ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.transport)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.transport ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.transport.spring)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.transport.spring
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.util)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.util ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.client)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.client ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.impl)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.impl ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.model)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.model ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.2.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=[2.2.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-cxf/1.6.1' presentationname='camel-cxf' symbolicname='org.apache.camel.camel-cxf' uri='../org/apache/camel/camel-cxf/1.6.1/camel-cxf-1.6.1.jar' version='1.6.1'>
  <description>
    Camel CXF support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    168416
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-cxf'/>
    <p n='symbolicname' v='org.apache.camel.camel-cxf'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.cxf.service.invoker,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.camel.component.cxf.interceptors,org.apache.cxf.binding,org.apache.cxf,org.apache.camel.component.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.interceptors'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.commons.io,org.apache.cxf.staxutils,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.soap.headers'/>
    <p n='uses' v='javax.jws.soap,javax.xml.namespace,javax.jws,javax.xml.bind,javax.xml.bind.annotation,javax.xml.ws'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.converter'/>
    <p n='uses' v='javax.xml.soap,org.apache.cxf.message,org.apache.camel,org.apache.commons.logging'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.camel.util,org.apache.camel.component.cxf,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.classloader,org.apache.camel.spi,org.apache.camel,org.apache.cxf.io,javax.jws,org.apache.cxf,org.apache.camel.component.cxf.spring,org.apache.cxf.staxutils,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.invoker'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.io,org.apache.cxf,org.apache.camel.component.cxf,org.apache.camel.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.frontend,org.apache.cxf.bus.spring,javax.xml.transform,javax.wsdl.factory,org.springframework.core.io,org.apache.camel.util,org.apache.camel.component.cxf.headers,javax.xml.ws,org.apache.camel.impl,org.apache.cxf.endpoint,javax.wsdl.xml,org.apache.cxf.common.classloader,org.apache.camel,org.apache.cxf.jaxws.handler,org.apache.camel.component.cxf.spring,org.apache.cxf.configuration.spring,org.apache.camel.component.cxf.feature,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.springframework.context.support,org.apache.cxf.message,org.apache.cxf.binding,org.apache.camel.impl.converter,org.apache.cxf.service,javax.wsdl,org.apache.camel.component.cxf.util,org.apache.camel.component.cxf.invoker,org.w3c.dom,org.apache.commons.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.springframework.context,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.camel.spi,org.apache.cxf.io,org.apache.cxf,org.apache.camel.spring,org.springframework.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.binding.soap'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.transport.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.camel.util,org.springframework.beans,org.apache.camel.component.cxf.transport,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.spring'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.springframework.context,org.apache.cxf.bus.spring,org.apache.cxf.service.factory,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.transport'/>
    <p n='uses' v='org.apache.camel.component.cxf.util,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.message,javax.annotation,org.apache.camel.spi,org.apache.camel,org.apache.cxf.io,org.apache.cxf,org.apache.camel.component.cxf,org.apache.cxf.ws.addressing,org.apache.camel.impl,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.converter)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.converter ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.feature)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.feature ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.headers)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.headers ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.interceptors)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.interceptors
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.invoker)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.invoker ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.soap.headers)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.soap.headers
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.spring)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.spring ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.transport)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.transport ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.transport.spring)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.transport.spring
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.util)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.util ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-cxf/2.0.0.M2' presentationname='camel-cxf' symbolicname='org.apache.camel.camel-cxf' uri='../org/apache/camel/camel-cxf/2.0-M2/camel-cxf-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel CXF support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    180702
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-cxf'/>
    <p n='symbolicname' v='org.apache.camel.camel-cxf'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.cxfbean'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.commons.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,org.apache.camel.spi,org.apache.camel,org.apache.cxf.jaxrs,org.apache.cxf,org.apache.camel.component.cxf,org.apache.camel.util,org.apache.camel.component.cxf.transport,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.camel.component.cxf.interceptors,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.interceptors'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.wsdl,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.commons.io,org.apache.cxf.staxutils,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.soap.headers'/>
    <p n='uses' v='javax.jws.soap,javax.xml.namespace,javax.jws,javax.xml.bind,javax.xml.bind.annotation,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.converter'/>
    <p n='uses' v='org.apache.commons.logging,org.springframework.context,javax.xml.soap,org.apache.cxf.message,org.apache.cxf.common.classloader,org.apache.camel,org.apache.camel.spi,org.apache.camel.component.cxf,org.apache.camel.spring,org.apache.camel.component.cxf.spring'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,javax.xml.transform,org.apache.cxf.service.factory,org.apache.camel.converter.jaxp,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.camel.util,org.apache.camel.component.cxf,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.classloader,org.apache.camel,org.apache.camel.spi,javax.jws,org.apache.cxf.io,org.apache.cxf,org.apache.camel.component.cxf.spring,org.apache.cxf.staxutils,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.headers,org.apache.camel.component.cxf.feature,org.apache.cxf.jaxws,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.jaxws.context,org.apache.cxf.frontend,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.camel.util,javax.xml.ws,org.apache.camel.impl,org.apache.cxf.service,javax.wsdl,javax.wsdl.xml,org.apache.cxf.endpoint,org.apache.camel.component.cxf.util,org.w3c.dom,org.apache.commons.logging,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,org.apache.cxf.common.classloader,org.apache.camel,org.apache.camel.spi,org.apache.cxf.io,org.apache.cxf,org.apache.camel.spring,org.apache.cxf.configuration.spring,org.apache.camel.component.cxf.spring,org.springframework.util,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.transport.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.camel.util,org.springframework.beans,org.apache.camel.component.cxf.transport,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.spring'/>
    <p n='uses' v='org.apache.cxf.jaxrs.utils,javax.xml.namespace,org.w3c.dom,org.apache.cxf.frontend,org.apache.cxf.jaxrs.client,org.springframework.context,org.apache.cxf.bus.spring,org.springframework.beans.factory.support,org.apache.cxf.service.factory,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.apache.cxf.jaxrs,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.util,org.apache.camel.component.cxf.jaxrs,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.transport'/>
    <p n='uses' v='org.apache.camel.component.cxf.util,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.message,javax.annotation,org.apache.camel.spi,org.apache.camel,org.apache.cxf.io,org.apache.cxf,org.apache.camel.component.cxf,org.apache.cxf.ws.addressing,org.apache.camel.impl,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.cxf.jaxrs'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.service.invoker,org.apache.commons.logging,org.apache.cxf.jaxrs.client,org.springframework.context,org.springframework.context.support,javax.ws.rs,org.apache.cxf.message,javax.ws.rs.core,org.apache.camel,org.apache.camel.spi,org.apache.cxf.jaxrs,org.apache.camel.spring,org.apache.camel.util,org.apache.cxf.configuration.spring,org.apache.camel.component.cxf.spring,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.core
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.converter)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.converter ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.cxfbean)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.cxfbean ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.feature)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.feature ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.interceptors)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.interceptors
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.jaxrs)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.jaxrs ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.soap.headers)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.soap.headers
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.spring)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.spring ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.transport)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.transport ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.transport.spring)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.transport.spring
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.cxf.util)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.cxf.util ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxrs.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxrs.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-saxon/2.0.0.M2' presentationname='camel-saxon' symbolicname='org.apache.camel.camel-saxon' uri='../org/apache/camel/camel-saxon/2.0-M2/camel-saxon-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel SAXON support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    24247
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-saxon'/>
    <p n='symbolicname' v='org.apache.camel.camel-saxon'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.xquery'/>
    <p n='uses' v='net.sf.saxon.query,net.sf.saxon.functions,net.sf.saxon.om,javax.xml.transform,org.apache.camel.converter.jaxp,net.sf.saxon.trans,org.springframework.core.io,org.apache.camel.util,javax.xml.transform.stream,org.apache.camel.impl,org.apache.camel.converter,org.w3c.dom,org.apache.commons.logging,org.apache.camel.component,javax.xml.transform.dom,org.apache.camel,org.apache.camel.spi,net.sf.saxon,org.apache.camel.component.bean,org.apache.camel.language'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.functions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.functions
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.om)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.om
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.query
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.trans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.trans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.xquery)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.xquery ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-saxon/2.0.0' presentationname='camel-saxon' symbolicname='org.apache.camel.camel-saxon' uri='../org/apache/camel/camel-saxon/2.0.0/camel-saxon-2.0.0.jar' version='2.0.0'>
  <description>
    Camel SAXON support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    29488
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-saxon'/>
    <p n='symbolicname' v='org.apache.camel.camel-saxon'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.xquery'/>
    <p n='uses' v='net.sf.saxon.query,net.sf.saxon.functions,net.sf.saxon.om,javax.xml.transform,org.apache.camel.converter.jaxp,net.sf.saxon.trans,org.springframework.core.io,org.apache.camel.util,javax.xml.transform.stream,org.apache.camel.impl,org.apache.camel.converter,org.w3c.dom,org.apache.commons.logging,org.apache.camel.component,javax.xml.transform.dom,org.apache.camel,org.apache.camel.spi,net.sf.saxon,org.apache.camel.component.bean,org.apache.camel.language'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.functions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.functions
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.om)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.om
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.query
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.trans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.trans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.xquery)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.xquery ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-saxon/1.6.1' presentationname='camel-saxon' symbolicname='org.apache.camel.camel-saxon' uri='../org/apache/camel/camel-saxon/1.6.1/camel-saxon-1.6.1.jar' version='1.6.1'>
  <description>
    Camel SAXON support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    24880
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-saxon'/>
    <p n='symbolicname' v='org.apache.camel.camel-saxon'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.xquery'/>
    <p n='uses' v='net.sf.saxon.query,net.sf.saxon.functions,net.sf.saxon.om,javax.xml.transform,org.apache.camel.converter.jaxp,net.sf.saxon.trans,org.springframework.core.io,org.apache.camel.util,javax.xml.transform.stream,org.apache.camel.impl,org.apache.camel.converter,org.w3c.dom,org.apache.commons.logging,org.apache.camel.component,javax.xml.transform.dom,org.apache.camel,org.apache.camel.spi,net.sf.saxon,org.apache.camel.component.bean,org.apache.camel.language'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.functions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.functions
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.om)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.om
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.query
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.trans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.trans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.xquery)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.xquery ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-saxon/2.0.0.M3' presentationname='camel-saxon' symbolicname='org.apache.camel.camel-saxon' uri='../org/apache/camel/camel-saxon/2.0-M3/camel-saxon-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel SAXON support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    24257
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-saxon'/>
    <p n='symbolicname' v='org.apache.camel.camel-saxon'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.xquery'/>
    <p n='uses' v='net.sf.saxon.query,net.sf.saxon.functions,net.sf.saxon.om,javax.xml.transform,org.apache.camel.converter.jaxp,net.sf.saxon.trans,org.springframework.core.io,org.apache.camel.util,javax.xml.transform.stream,org.apache.camel.impl,org.apache.camel.converter,org.w3c.dom,org.apache.commons.logging,org.apache.camel.component,javax.xml.transform.dom,org.apache.camel,org.apache.camel.spi,net.sf.saxon,org.apache.camel.component.bean,org.apache.camel.language'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.functions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.functions
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.om)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.om
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.query
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.trans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.trans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.xquery)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.xquery ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.language
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.camel.camel-xmlsecurity/2.0.0.M3' presentationname='camel-xmlsecurity' symbolicname='org.apache.camel.camel-xmlsecurity' uri='../org/apache/camel/camel-xmlsecurity/2.0-M3/camel-xmlsecurity-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Partial XML Encryption/Decryption support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12228
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-xmlsecurity'/>
    <p n='symbolicname' v='org.apache.camel.camel-xmlsecurity'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.xmlsecurity'/>
    <p n='uses' v='org.apache.camel.converter,org.w3c.dom,javax.crypto,org.apache.xml.security,org.apache.xml.security.encryption,javax.xml.transform.dom,org.apache.xml.security.keys,org.w3c.dom.traversal,javax.crypto.spec,org.apache.camel,org.apache.camel.spi,org.apache.xpath,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto.spec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto.spec
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.xmlsecurity)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.xmlsecurity ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.encryption)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.encryption
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal
  </require>
</resource>
<resource id='org.apache.camel.camel-xmlsecurity/2.0.0' presentationname='camel-xmlsecurity' symbolicname='org.apache.camel.camel-xmlsecurity' uri='../org/apache/camel/camel-xmlsecurity/2.0.0/camel-xmlsecurity-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Partial XML Encryption/Decryption support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17353
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-xmlsecurity'/>
    <p n='symbolicname' v='org.apache.camel.camel-xmlsecurity'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.xmlsecurity'/>
    <p n='uses' v='org.apache.camel.converter,org.w3c.dom,javax.crypto,org.apache.xml.security,org.apache.xml.security.encryption,javax.xml.transform.dom,org.apache.xml.security.keys,org.w3c.dom.traversal,javax.crypto.spec,org.apache.camel,org.apache.camel.spi,org.apache.xpath,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto.spec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto.spec
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.xmlsecurity)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.xmlsecurity ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.encryption)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.encryption
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal
  </require>
</resource>
<resource id='org.apache.camel.camel-xmlsecurity/2.0.0.M2' presentationname='camel-xmlsecurity' symbolicname='org.apache.camel.camel-xmlsecurity' uri='../org/apache/camel/camel-xmlsecurity/2.0-M2/camel-xmlsecurity-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Partial XML Encryption/Decryption support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12235
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-xmlsecurity'/>
    <p n='symbolicname' v='org.apache.camel.camel-xmlsecurity'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.dataformat.xmlsecurity'/>
    <p n='uses' v='org.apache.camel.converter,org.w3c.dom,javax.crypto,org.apache.xml.security,org.apache.xml.security.encryption,javax.xml.transform.dom,org.apache.xml.security.keys,org.w3c.dom.traversal,javax.crypto.spec,org.apache.camel,org.apache.camel.spi,org.apache.xpath,org.apache.camel.util'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto.spec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto.spec
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.dataformat.xmlsecurity)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.dataformat.xmlsecurity ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.encryption)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.encryption
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal
  </require>
</resource>
<resource id='org.apache.camel.camel-mail/1.6.1' presentationname='camel-mail' symbolicname='org.apache.camel.camel-mail' uri='../org/apache/camel/camel-mail/1.6.1/camel-mail-1.6.1.jar' version='1.6.1'>
  <description>
    Camel Mail support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    40409
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-mail'/>
    <p n='symbolicname' v='org.apache.camel.camel-mail'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.mail'/>
    <p n='uses' v='javax.mail.util,org.apache.camel.converter,javax.activation,org.apache.commons.logging,javax.mail.search,javax.mail.internet,org.apache.camel,org.apache.camel.spi,javax.mail,org.apache.camel.util,org.springframework.mail.javamail,org.apache.camel.impl'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.search)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.search
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mail)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mail ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.mail.javamail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.mail.javamail
  </require>
</resource>
<resource id='org.apache.camel.camel-mail/2.0.0.M2' presentationname='camel-mail' symbolicname='org.apache.camel.camel-mail' uri='../org/apache/camel/camel-mail/2.0-M2/camel-mail-2.0-M2.jar' version='2.0.0.M2'>
  <description>
    Camel Mail support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    44446
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-mail'/>
    <p n='symbolicname' v='org.apache.camel.camel-mail'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.mail'/>
    <p n='uses' v='javax.mail.util,org.apache.camel.converter,javax.activation,org.apache.commons.logging,javax.mail.search,javax.mail.internet,org.apache.camel,org.apache.camel.spi,javax.mail,org.apache.camel.util,org.springframework.mail.javamail,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.search)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.search
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mail)(version&gt;=2.0.0.M2))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mail ;version=2.0.0.M2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.mail.javamail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.mail.javamail
  </require>
</resource>
<resource id='org.apache.camel.camel-mail/2.0.0.M3' presentationname='camel-mail' symbolicname='org.apache.camel.camel-mail' uri='../org/apache/camel/camel-mail/2.0-M3/camel-mail-2.0-M3.jar' version='2.0.0.M3'>
  <description>
    Camel Mail support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    43619
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-mail'/>
    <p n='symbolicname' v='org.apache.camel.camel-mail'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.mail'/>
    <p n='uses' v='javax.mail.util,org.apache.camel.converter,javax.activation,org.apache.commons.logging,javax.mail.search,org.apache.camel.spi,org.apache.camel,javax.mail.internet,javax.mail,org.apache.camel.util,org.springframework.mail.javamail,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0.M3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.search)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.search
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mail)(version&gt;=2.0.0.M3))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mail ;version=2.0.0.M3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.mail.javamail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.mail.javamail
  </require>
</resource>
<resource id='org.apache.camel.camel-mail/2.0.0' presentationname='camel-mail' symbolicname='org.apache.camel.camel-mail' uri='../org/apache/camel/camel-mail/2.0.0/camel-mail-2.0.0.jar' version='2.0.0'>
  <description>
    Camel Mail support
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    49161
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='camel-mail'/>
    <p n='symbolicname' v='org.apache.camel.camel-mail'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.camel.component.mail'/>
    <p n='uses' v='javax.mail.util,org.apache.camel.converter,javax.activation,org.apache.commons.logging,javax.mail.search,org.apache.camel.spi,org.apache.camel,javax.mail.internet,org.apache.camel.util,javax.mail,org.springframework.mail.javamail,org.apache.camel.impl'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.search)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.search
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.mail)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.mail ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.mail.javamail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.mail.javamail
  </require>
</resource>
<resource id='org.apache.jackrabbit.jackrabbit-api/1.5.0' presentationname='Jackrabbit API' symbolicname='org.apache.jackrabbit.jackrabbit-api' uri='../org/apache/jackrabbit/jackrabbit-api/1.5.0/jackrabbit-api-1.5.0.jar' version='1.5.0'>
  <description>
    Jacrabbit-specific extensions to the JCR API
  </description>
  <documentation>
    http://jackrabbit.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26808
  </size>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Jackrabbit API'/>
    <p n='symbolicname' v='org.apache.jackrabbit.jackrabbit-api'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.jsr283.security'/>
    <p n='uses' v='javax.jcr,javax.jcr.version,javax.jcr.lock'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.security.user'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.api.security.principal,javax.security.auth'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.jsr283.retention'/>
    <p n='uses' v='javax.jcr,javax.jcr.version,javax.jcr.lock'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.jsr283.nodetype'/>
    <p n='uses' v='javax.jcr,javax.jcr.nodetype'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.security.principal'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.observation'/>
    <p n='uses' v='javax.jcr.observation'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.jsr283'/>
    <p n='uses' v='javax.jcr,javax.jcr.version,javax.jcr.nodetype,javax.jcr.lock'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.api.security.user,org.apache.jackrabbit.api.security.principal,javax.transaction.xa,javax.jcr.nodetype,org.xml.sax'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283 ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283.nodetype)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283.nodetype ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283.retention)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283.retention ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.observation)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.observation ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.security.principal)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.security.principal
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.security.user)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.security.user ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.jackrabbit.jackrabbit-api/1.6.0' presentationname='Apache Jackrabbit API' symbolicname='org.apache.jackrabbit.jackrabbit-api' uri='../org/apache/jackrabbit/jackrabbit-api/1.6.0/jackrabbit-api-1.6.0.jar' version='1.6.0'>
  <description>
    Jacrabbit-specific extensions to the JCR API
  </description>
  <documentation>
    http://jackrabbit.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    36940
  </size>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Jackrabbit API'/>
    <p n='symbolicname' v='org.apache.jackrabbit.jackrabbit-api'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.jsr283.security'/>
    <p n='uses' v='javax.jcr,javax.jcr.version,javax.jcr.lock'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.security.user'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.api.security.principal,javax.security.auth'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.jsr283.retention'/>
    <p n='uses' v='javax.jcr,javax.jcr.version,javax.jcr.lock'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.jsr283.nodetype'/>
    <p n='uses' v='javax.jcr,javax.jcr.nodetype'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.jsr283.lock'/>
    <p n='uses' v='javax.jcr,javax.jcr.lock'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.security.principal'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.jsr283.version'/>
    <p n='uses' v='javax.jcr,javax.jcr.nodetype,javax.jcr.version,javax.jcr.lock'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.observation'/>
    <p n='uses' v='javax.jcr.observation'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.jsr283.observation'/>
    <p n='uses' v='javax.jcr,javax.jcr.observation'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.jsr283'/>
    <p n='uses' v='org.apache.jackrabbit.api.jsr283.security,javax.jcr,org.apache.jackrabbit.api.jsr283.retention,org.apache.jackrabbit.api.jsr283.lock,org.apache.jackrabbit.api.jsr283.version,javax.jcr.nodetype,javax.jcr.version,javax.jcr.lock'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api.jsr283.query'/>
    <p n='uses' v='javax.jcr.query,javax.jcr'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.api.security.user,org.apache.jackrabbit.api.security.principal,javax.transaction.xa,javax.jcr.nodetype,org.xml.sax'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283 ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283.lock)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283.lock ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283.nodetype)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283.nodetype ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283.observation)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283.observation
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283.query)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283.query ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283.retention)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283.retention ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283.security)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283.security ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283.version)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283.version ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.observation)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.observation ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.security.principal)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.security.principal
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.security.user)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.security.user ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.jackrabbit.jackrabbit-jcr-commons/1.6.0' presentationname='Jackrabbit JCR Commons' symbolicname='org.apache.jackrabbit.jackrabbit-jcr-commons' uri='../org/apache/jackrabbit/jackrabbit-jcr-commons/1.6.0/jackrabbit-jcr-commons-1.6.0.jar' version='1.6.0'>
  <description>
    General purpose classes for use with the JCR API
  </description>
  <documentation>
    http://jackrabbit.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    214729
  </size>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Jackrabbit JCR Commons'/>
    <p n='symbolicname' v='org.apache.jackrabbit.jackrabbit-jcr-commons'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.uuid'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.xml'/>
    <p n='uses' v='javax.jcr,javax.xml.parsers,javax.jcr.nodetype,org.xml.sax,org.apache.jackrabbit.value,org.apache.jackrabbit.commons,javax.xml.transform,javax.xml.transform.stream,javax.xml.transform.sax,org.xml.sax.helpers,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.iterator'/>
    <p n='uses' v='javax.jcr.query,javax.jcr,javax.jcr.observation,javax.jcr.version,javax.jcr.nodetype'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.repository'/>
    <p n='uses' v='javax.jcr,javax.naming,org.apache.jackrabbit.commons'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.name'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.packaging'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.commons.predicate'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.json'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.value'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.name,org.apache.jackrabbit.uuid,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.commons.xml,javax.jcr.version,javax.jcr.nodetype,org.apache.jackrabbit.util,org.xml.sax,javax.jcr.lock'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.util.name'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.name,org.xml.sax.helpers,org.xml.sax'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.visitor'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.commons.predicate'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.predicate'/>
    <p n='uses' v='javax.jcr,javax.jcr.nodetype'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.query'/>
    <p n='uses' v='javax.jcr.query,javax.jcr,javax.jcr.nodetype,org.apache.jackrabbit.commons.iterator,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.util'/>
    <p n='uses' v='javax.jcr,javax.jcr.nodetype,javax.jcr.lock,org.apache.jackrabbit.name,javax.jcr.observation,javax.jcr.util'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.iterator)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.iterator ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.json)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.json ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.packaging)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.packaging ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.predicate)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.predicate ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.query)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.query ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.repository)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.repository ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.visitor)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.visitor ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.xml)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.xml ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.name)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.name ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.util)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.util ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.util.name)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.util.name ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.uuid)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.uuid ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.value)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.value ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.jackrabbit.jackrabbit-jcr-commons/1.5.3' presentationname='Jackrabbit JCR Commons' symbolicname='org.apache.jackrabbit.jackrabbit-jcr-commons' uri='../org/apache/jackrabbit/jackrabbit-jcr-commons/1.5.3/jackrabbit-jcr-commons-1.5.3.jar' version='1.5.3'>
  <description>
    General purpose classes for use with the JCR API
  </description>
  <documentation>
    http://jackrabbit.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    207844
  </size>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Jackrabbit JCR Commons'/>
    <p n='symbolicname' v='org.apache.jackrabbit.jackrabbit-jcr-commons'/>
    <p n='version' t='version' v='1.5.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.uuid'/>
    <p n='version' t='version' v='1.5.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.xml'/>
    <p n='uses' v='javax.jcr,javax.xml.parsers,javax.jcr.nodetype,org.xml.sax,org.apache.jackrabbit.value,org.apache.jackrabbit.commons,javax.xml.transform,javax.xml.transform.stream,javax.xml.transform.sax,org.xml.sax.helpers,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.iterator'/>
    <p n='uses' v='javax.jcr.query,javax.jcr,javax.jcr.observation,javax.jcr.version,javax.jcr.nodetype'/>
    <p n='version' t='version' v='1.5.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.repository'/>
    <p n='uses' v='javax.jcr,javax.naming,org.apache.jackrabbit.commons'/>
    <p n='version' t='version' v='1.5.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.name'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.packaging'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.commons.predicate'/>
    <p n='version' t='version' v='1.5.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.value'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.name,org.apache.jackrabbit.uuid,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit'/>
    <p n='version' t='version' v='1.5.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.commons.xml,javax.jcr.version,javax.jcr.nodetype,org.apache.jackrabbit.util,org.xml.sax,javax.jcr.lock'/>
    <p n='version' t='version' v='1.5.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.util.name'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.name,org.xml.sax.helpers,org.xml.sax'/>
    <p n='version' t='version' v='1.5.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.visitor'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.commons.predicate'/>
    <p n='version' t='version' v='1.5.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.predicate'/>
    <p n='uses' v='javax.jcr,javax.jcr.nodetype'/>
    <p n='version' t='version' v='1.5.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.query'/>
    <p n='uses' v='javax.jcr.query,javax.jcr,javax.jcr.nodetype,org.apache.jackrabbit.commons.iterator,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.util'/>
    <p n='uses' v='javax.jcr,javax.jcr.nodetype,javax.jcr.lock,org.apache.jackrabbit.name,javax.jcr.observation,javax.jcr.util'/>
    <p n='version' t='version' v='1.5.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit)(version&gt;=1.5.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit ;version=1.5.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons)(version&gt;=1.5.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons ;version=1.5.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.iterator)(version&gt;=1.5.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.iterator ;version=1.5.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.packaging)(version&gt;=1.5.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.packaging ;version=1.5.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.predicate)(version&gt;=1.5.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.predicate ;version=1.5.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.query)(version&gt;=1.5.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.query ;version=1.5.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.repository)(version&gt;=1.5.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.repository ;version=1.5.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.visitor)(version&gt;=1.5.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.visitor ;version=1.5.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.xml)(version&gt;=1.5.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.xml ;version=1.5.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.name)(version&gt;=1.5.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.name ;version=1.5.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.util)(version&gt;=1.5.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.util ;version=1.5.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.util.name)(version&gt;=1.5.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.util.name ;version=1.5.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.uuid)(version&gt;=1.5.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.uuid ;version=1.5.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.value)(version&gt;=1.5.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.value ;version=1.5.3
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.jackrabbit.jackrabbit-jcr-commons/1.5.0' presentationname='Jackrabbit JCR Commons' symbolicname='org.apache.jackrabbit.jackrabbit-jcr-commons' uri='../org/apache/jackrabbit/jackrabbit-jcr-commons/1.5.0/jackrabbit-jcr-commons-1.5.0.jar' version='1.5.0'>
  <description>
    General purpose classes for use with the JCR API
  </description>
  <documentation>
    http://jackrabbit.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    202757
  </size>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Jackrabbit JCR Commons'/>
    <p n='symbolicname' v='org.apache.jackrabbit.jackrabbit-jcr-commons'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.uuid'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.xml'/>
    <p n='uses' v='javax.jcr,javax.xml.parsers,javax.jcr.nodetype,org.xml.sax,org.apache.jackrabbit.value,org.apache.jackrabbit.commons,javax.xml.transform,javax.xml.transform.stream,javax.xml.transform.sax,org.xml.sax.helpers,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.iterator'/>
    <p n='uses' v='javax.jcr.query,javax.jcr,javax.jcr.observation,javax.jcr.version,javax.jcr.nodetype'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.repository'/>
    <p n='uses' v='javax.jcr,javax.naming,org.apache.jackrabbit.commons'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.name'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.packaging'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.commons.predicate'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.value'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.name,org.apache.jackrabbit.uuid,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.commons.xml,javax.jcr.nodetype,javax.jcr.version,org.xml.sax,javax.jcr.lock,javax.xml.transform,javax.xml.transform.stream,javax.xml.transform.sax,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.util.name'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.name,org.xml.sax.helpers,org.xml.sax'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.visitor'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.commons.predicate'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.predicate'/>
    <p n='uses' v='javax.jcr,javax.jcr.nodetype'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.query'/>
    <p n='uses' v='javax.jcr.query,javax.jcr,javax.jcr.nodetype,org.apache.jackrabbit.commons.iterator,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.util'/>
    <p n='uses' v='javax.jcr,javax.jcr.nodetype,javax.jcr.lock,org.apache.jackrabbit.name,javax.jcr.observation,javax.jcr.util'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.iterator)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.iterator ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.packaging)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.packaging ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.predicate)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.predicate ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.query)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.query ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.repository)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.repository ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.visitor)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.visitor ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.xml)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.xml ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.name)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.name ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.util.name)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.util.name ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.uuid)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.uuid ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.value)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.value ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.jackrabbit.jackrabbit-jcr-commons/1.4.2' presentationname='Jackrabbit JCR Commons' symbolicname='org.apache.jackrabbit.jackrabbit-jcr-commons' uri='../org/apache/jackrabbit/jackrabbit-jcr-commons/1.4.2/jackrabbit-jcr-commons-1.4.2.jar' version='1.4.2'>
  <description>
    General purpose classes for use with the JCR API
  </description>
  <documentation>
    http://jackrabbit.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    165491
  </size>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Jackrabbit JCR Commons'/>
    <p n='symbolicname' v='org.apache.jackrabbit.jackrabbit-jcr-commons'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.uuid'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.xml'/>
    <p n='uses' v='javax.xml.transform,javax.xml.transform.stream,javax.xml.parsers,javax.xml.transform.sax,org.xml.sax.helpers,org.xml.sax'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.iterator'/>
    <p n='uses' v='javax.jcr.query,javax.jcr,javax.jcr.observation,javax.jcr.version,javax.jcr.nodetype'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.repository'/>
    <p n='uses' v='javax.jcr,javax.naming,org.apache.jackrabbit.commons,org.slf4j'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.name'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.packaging'/>
    <p n='uses' v='javax.jcr,org.apache.commons.collections'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.value'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.name,org.apache.jackrabbit.uuid,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons'/>
    <p n='uses' v='javax.jcr,javax.xml.transform,javax.xml.transform.stream,org.apache.jackrabbit.commons.xml,javax.jcr.nodetype,javax.jcr.version,javax.xml.transform.sax,org.xml.sax,javax.jcr.lock'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.util.name'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.name,org.slf4j,org.xml.sax.helpers,org.xml.sax'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.visitor'/>
    <p n='uses' v='javax.jcr,org.apache.commons.collections,org.apache.commons.collections.functors'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.predicate'/>
    <p n='uses' v='javax.jcr,org.apache.commons.collections,javax.jcr.nodetype'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.util'/>
    <p n='uses' v='javax.jcr,javax.jcr.nodetype,javax.jcr.lock,org.apache.jackrabbit.name,javax.jcr.observation,javax.jcr.util'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.functors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.functors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.iterator)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.iterator ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.packaging)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.packaging ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.predicate)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.predicate ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.repository)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.repository ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.visitor)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.visitor ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.xml)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.xml ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.name)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.name ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.util)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.util ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.util.name)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.util.name ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.uuid)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.uuid ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.value)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.value ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.jackrabbit.jackrabbit-jcr-commons/1.5.5' presentationname='Jackrabbit JCR Commons' symbolicname='org.apache.jackrabbit.jackrabbit-jcr-commons' uri='../org/apache/jackrabbit/jackrabbit-jcr-commons/1.5.5/jackrabbit-jcr-commons-1.5.5.jar' version='1.5.5'>
  <description>
    General purpose classes for use with the JCR API
  </description>
  <documentation>
    http://jackrabbit.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    208146
  </size>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Jackrabbit JCR Commons'/>
    <p n='symbolicname' v='org.apache.jackrabbit.jackrabbit-jcr-commons'/>
    <p n='version' t='version' v='1.5.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.uuid'/>
    <p n='version' t='version' v='1.5.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.xml'/>
    <p n='uses' v='javax.jcr,javax.xml.parsers,javax.jcr.nodetype,org.xml.sax,org.apache.jackrabbit.value,org.apache.jackrabbit.commons,javax.xml.transform,javax.xml.transform.stream,javax.xml.transform.sax,org.xml.sax.helpers,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.iterator'/>
    <p n='uses' v='javax.jcr.query,javax.jcr,javax.jcr.observation,javax.jcr.version,javax.jcr.nodetype'/>
    <p n='version' t='version' v='1.5.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.repository'/>
    <p n='uses' v='javax.jcr,javax.naming,org.apache.jackrabbit.commons'/>
    <p n='version' t='version' v='1.5.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.name'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.packaging'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.commons.predicate'/>
    <p n='version' t='version' v='1.5.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.value'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.name,org.apache.jackrabbit.uuid,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit'/>
    <p n='version' t='version' v='1.5.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.commons.xml,javax.jcr.version,javax.jcr.nodetype,org.apache.jackrabbit.util,org.xml.sax,javax.jcr.lock'/>
    <p n='version' t='version' v='1.5.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.util.name'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.name,org.xml.sax.helpers,org.xml.sax'/>
    <p n='version' t='version' v='1.5.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.visitor'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.commons.predicate'/>
    <p n='version' t='version' v='1.5.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.predicate'/>
    <p n='uses' v='javax.jcr,javax.jcr.nodetype'/>
    <p n='version' t='version' v='1.5.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.query'/>
    <p n='uses' v='javax.jcr.query,javax.jcr,javax.jcr.nodetype,org.apache.jackrabbit.commons.iterator,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.5'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.util'/>
    <p n='uses' v='javax.jcr,javax.jcr.nodetype,javax.jcr.lock,org.apache.jackrabbit.name,javax.jcr.observation,javax.jcr.util'/>
    <p n='version' t='version' v='1.5.5'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit)(version&gt;=1.5.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit ;version=1.5.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons)(version&gt;=1.5.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons ;version=1.5.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.iterator)(version&gt;=1.5.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.iterator ;version=1.5.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.packaging)(version&gt;=1.5.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.packaging ;version=1.5.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.predicate)(version&gt;=1.5.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.predicate ;version=1.5.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.query)(version&gt;=1.5.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.query ;version=1.5.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.repository)(version&gt;=1.5.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.repository ;version=1.5.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.visitor)(version&gt;=1.5.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.visitor ;version=1.5.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.xml)(version&gt;=1.5.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.xml ;version=1.5.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.name)(version&gt;=1.5.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.name ;version=1.5.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.util)(version&gt;=1.5.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.util ;version=1.5.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.util.name)(version&gt;=1.5.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.util.name ;version=1.5.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.uuid)(version&gt;=1.5.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.uuid ;version=1.5.5
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.value)(version&gt;=1.5.5))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.value ;version=1.5.5
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.jackrabbit.jackrabbit-jcr-commons/1.5.2' presentationname='Jackrabbit JCR Commons' symbolicname='org.apache.jackrabbit.jackrabbit-jcr-commons' uri='../org/apache/jackrabbit/jackrabbit-jcr-commons/1.5.2/jackrabbit-jcr-commons-1.5.2.jar' version='1.5.2'>
  <description>
    General purpose classes for use with the JCR API
  </description>
  <documentation>
    http://jackrabbit.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    202835
  </size>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Jackrabbit JCR Commons'/>
    <p n='symbolicname' v='org.apache.jackrabbit.jackrabbit-jcr-commons'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.uuid'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.xml'/>
    <p n='uses' v='javax.jcr,javax.xml.parsers,javax.jcr.nodetype,org.xml.sax,org.apache.jackrabbit.value,org.apache.jackrabbit.commons,javax.xml.transform,javax.xml.transform.stream,javax.xml.transform.sax,org.xml.sax.helpers,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.iterator'/>
    <p n='uses' v='javax.jcr.query,javax.jcr,javax.jcr.observation,javax.jcr.version,javax.jcr.nodetype'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.repository'/>
    <p n='uses' v='javax.jcr,javax.naming,org.apache.jackrabbit.commons'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.name'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.packaging'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.commons.predicate'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.value'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.name,org.apache.jackrabbit.uuid,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.commons.xml,javax.jcr.nodetype,javax.jcr.version,org.xml.sax,javax.jcr.lock,javax.xml.transform,javax.xml.transform.stream,javax.xml.transform.sax,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.util.name'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.name,org.xml.sax.helpers,org.xml.sax'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.visitor'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.commons.predicate'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.predicate'/>
    <p n='uses' v='javax.jcr,javax.jcr.nodetype'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.commons.query'/>
    <p n='uses' v='javax.jcr.query,javax.jcr,javax.jcr.nodetype,org.apache.jackrabbit.commons.iterator,org.apache.jackrabbit.util'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.util'/>
    <p n='uses' v='javax.jcr,javax.jcr.nodetype,javax.jcr.lock,org.apache.jackrabbit.name,javax.jcr.observation,javax.jcr.util'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.iterator)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.iterator ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.packaging)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.packaging ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.predicate)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.predicate ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.query)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.query ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.repository)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.repository ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.visitor)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.visitor ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.xml)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.xml ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.name)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.name ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.util)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.util ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.util.name)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.util.name ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.uuid)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.uuid ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.value)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.value ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.jackrabbit.jackrabbit-jcr-rmi/1.5.0' presentationname='Jackrabbit JCR-RMI' symbolicname='org.apache.jackrabbit.jackrabbit-jcr-rmi' uri='../org/apache/jackrabbit/jackrabbit-jcr-rmi/1.5.0/jackrabbit-jcr-rmi-1.5.0.jar' version='1.5.0'>
  <description>
    JCR-RMI is a transparent Remote Method Invocation (RMI) layer
    
    
    
    
    
    
    
    
    
    
    
     for
     the
     Content
     Repository
    
     for
     Java

         Technology
    
    
 
        API
     (JCR).
    
 
    
       
     The
  
       layer makes
    
     it possible
    
    
     to remotely
    
    
     access
 
       
   
      JCR content
    
 
      
     
     repositories.
   
 
        
     JCR-RMI
     is
     developed
    
     as
    
    
     a part
     of
     the Apache
  
  
  
          
 
      
      Jackrabbit
  
       project,
 
        but
     the
    
     implementation
    
   
     
     is compatible
   
     
  
       with

        
     all
   
      JCR content

     
       
     repositories.
  </description>
  <documentation>
    http://jackrabbit.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    230795
  </size>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Jackrabbit JCR-RMI'/>
    <p n='symbolicname' v='org.apache.jackrabbit.jackrabbit-jcr-rmi'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.rmi.remote'/>
    <p n='uses' v='javax.jcr,javax.transaction.xa'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.rmi.value'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.rmi.server'/>
    <p n='uses' v='javax.jcr,javax.jcr.version,javax.jcr.nodetype,org.apache.jackrabbit.rmi.observation,javax.jcr.lock,javax.jcr.query,org.apache.jackrabbit.rmi.remote,org.apache.jackrabbit.rmi.value,javax.jcr.observation,javax.transaction.xa,org.apache.jackrabbit.rmi.server.iterator,org.apache.jackrabbit.api'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.rmi.client.iterator'/>
    <p n='uses' v='javax.jcr.query,javax.jcr,org.apache.jackrabbit.rmi.remote,org.apache.jackrabbit.rmi.client,javax.jcr.version,javax.jcr.nodetype'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.rmi.client'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.rmi.client.iterator,org.apache.jackrabbit.rmi.iterator,org.apache.jackrabbit.rmi.observation,javax.naming.spi,javax.jcr.lock,org.xml.sax,org.apache.jackrabbit.rmi.value,javax.jcr.observation,javax.transaction.xa,javax.xml.transform.sax,javax.naming,org.apache.jackrabbit.commons.xml,javax.jcr.version,javax.jcr.nodetype,javax.jcr.query,org.apache.jackrabbit.rmi.remote,javax.xml.transform,javax.xml.transform.stream,org.xml.sax.helpers,org.apache.jackrabbit.api'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.rmi.server.iterator'/>
    <p n='uses' v='javax.jcr.query,javax.jcr,org.apache.jackrabbit.rmi.remote,org.apache.jackrabbit.rmi.server,javax.jcr.version,javax.jcr.nodetype'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.rmi.jackrabbit'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.rmi.remote,org.apache.jackrabbit.rmi.server,org.apache.jackrabbit.rmi.client,javax.jcr.nodetype,org.xml.sax,org.apache.jackrabbit.api'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.rmi.repository'/>
    <p n='uses' v='org.apache.jackrabbit.commons.repository,javax.jcr,org.apache.jackrabbit.rmi.remote,javax.naming,org.apache.jackrabbit.rmi.client,org.apache.jackrabbit.rmi.jackrabbit'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.rmi.iterator'/>
    <p n='uses' v='javax.jcr,javax.jcr.observation'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.rmi.server.jmx'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.rmi.remote,javax.naming,org.apache.jackrabbit.rmi.server,org.apache.jackrabbit.api'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.rmi.observation'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.rmi.remote,org.apache.jackrabbit.rmi.server,javax.jcr.observation,org.apache.jackrabbit.rmi.iterator,org.slf4j'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.repository)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.repository ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.xml)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.xml ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.rmi.client)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.rmi.client ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.rmi.client.iterator)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.rmi.client.iterator ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.rmi.iterator)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.rmi.iterator ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.rmi.jackrabbit)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.rmi.jackrabbit ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.rmi.observation)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.rmi.observation ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.rmi.remote)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.rmi.remote ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.rmi.repository)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.rmi.repository ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.rmi.server)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.rmi.server ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.rmi.server.iterator)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.rmi.server.iterator ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.rmi.server.jmx)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.rmi.server.jmx ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.rmi.value)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.rmi.value ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='servicemix-jsr181/2009.1.0' presentationname='ServiceMix :: JSR-181 Service Engine' symbolicname='servicemix-jsr181' uri='../org/apache/servicemix/servicemix-jsr181/2009.01/servicemix-jsr181-2009.01.jar' version='2009.1.0'>
  <description>
    JSR-181 service engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    52525
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: JSR-181 Service Engine'/>
    <p n='symbolicname' v='servicemix-jsr181'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jsr181.xfire'/>
    <p n='uses' v='org.codehaus.xfire.service.binding,org.codehaus.xfire,org.apache.servicemix.jbi.helper,javax.xml.namespace,org.jdom.transform,org.codehaus.xfire.util.jdom,org.codehaus.xfire.xmlbeans,org.codehaus.xfire.soap.handler,org.codehaus.xfire.handler,javax.xml.transform,javax.naming,org.codehaus.xfire.jaxws,javax.wsdl.factory,org.codehaus.xfire.fault,org.apache.servicemix.jbi.api,org.codehaus.xfire.exchange,org.codehaus.xfire.transport,javax.xml.ws,javax.xml.transform.stream,org.springframework.beans.factory,javax.xml.stream,javax.wsdl,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.codehaus.xfire.soap,javax.wsdl.xml,javax.jbi.component,org.codehaus.xfire.annotations,org.codehaus.xfire.client,org.codehaus.xfire.aegis.type,org.w3c.dom,org.apache.commons.logging,javax.jbi.servicedesc,org.codehaus.xfire.annotations.commons,org.jdom,javax.jbi,org.codehaus.xfire.service,org.codehaus.xfire.wsdl11,org.apache.servicemix.jsr181,javax.xml.bind,javax.security.auth,org.codehaus.xfire.aegis'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jsr181'/>
    <p n='uses' v='org.codehaus.xfire.service.binding,org.codehaus.xfire,javax.xml.namespace,javax.jbi.management,javax.xml.transform,org.apache.servicemix.common.tools.wsdl,javax.wsdl.factory,org.codehaus.xfire.fault,org.springframework.core.io,org.apache.servicemix.jbi.api,javax.xml.parsers,org.codehaus.xfire.exchange,org.codehaus.xfire.transport,org.apache.servicemix.common,org.codehaus.xfire.service.invoker,javax.xml.stream,javax.wsdl,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.wsdl.xml,org.xml.sax,javax.jbi.component,javax.activation,org.w3c.dom,org.apache.commons.logging,org.codehaus.xfire.service,org.apache.servicemix.jsr181.xfire,org.apache.servicemix.common.endpoints,org.codehaus.xfire.attachments'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common'/>
    <p n='uses' v='javax.jbi.component,javax.management,javax.jbi.management,javax.jbi'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jsr181.packaging'/>
    <p n='uses' v='javax.jbi.messaging,javax.management,javax.jbi.component,javax.xml.namespace,org.w3c.dom,javax.jbi.servicedesc,javax.jbi.management,javax.jbi,javax.naming,org.apache.servicemix.jsr181,org.apache.servicemix.common,org.apache.servicemix.common.xbean'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.tools.wsdl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.tools.wsdl ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.xbean)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.xbean ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.helper)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.helper
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jsr181)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jsr181 ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jsr181.packaging)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jsr181.packaging ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jsr181.xfire)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jsr181.xfire ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.annotations
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.annotations.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.annotations.commons
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.attachments)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.attachments
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.client
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.exchange)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.exchange
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.fault)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.fault
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.jaxws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.jaxws
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.service
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.service.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.service.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.service.invoker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.service.invoker
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.soap.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.soap.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.util.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.util.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.wsdl11)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.wsdl11
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='servicemix-jsr181/2008.1.0' presentationname='ServiceMix :: JSR-181 Service Engine' symbolicname='servicemix-jsr181' uri='../org/apache/servicemix/servicemix-jsr181/2008.01/servicemix-jsr181-2008.01.jar' version='2008.1.0'>
  <description>
    JSR-181 service engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    52142
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: JSR-181 Service Engine'/>
    <p n='symbolicname' v='servicemix-jsr181'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jsr181.xfire'/>
    <p n='uses' v='org.codehaus.xfire.service.binding,org.codehaus.xfire,org.apache.servicemix.jbi.helper,javax.xml.namespace,org.jdom.transform,org.codehaus.xfire.util.jdom,org.codehaus.xfire.xmlbeans,org.codehaus.xfire.soap.handler,org.codehaus.xfire.handler,javax.xml.transform,javax.naming,org.codehaus.xfire.jaxws,javax.wsdl.factory,org.codehaus.xfire.fault,org.apache.servicemix.jbi.api,org.codehaus.xfire.exchange,org.codehaus.xfire.transport,javax.xml.ws,javax.xml.transform.stream,org.springframework.beans.factory,javax.xml.stream,javax.wsdl,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.codehaus.xfire.soap,javax.wsdl.xml,javax.jbi.component,org.codehaus.xfire.annotations,org.codehaus.xfire.client,org.codehaus.xfire.aegis.type,org.w3c.dom,org.apache.commons.logging,javax.jbi.servicedesc,org.codehaus.xfire.annotations.commons,org.jdom,javax.jbi,org.codehaus.xfire.service,org.codehaus.xfire.wsdl11,org.apache.servicemix.jsr181,javax.xml.bind,javax.security.auth,org.codehaus.xfire.aegis'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jsr181'/>
    <p n='uses' v='org.codehaus.xfire.service.binding,org.codehaus.xfire,javax.xml.namespace,javax.jbi.management,javax.xml.transform,org.apache.servicemix.common.tools.wsdl,javax.wsdl.factory,org.codehaus.xfire.fault,org.springframework.core.io,org.apache.servicemix.jbi.api,javax.xml.parsers,org.codehaus.xfire.exchange,org.codehaus.xfire.transport,org.apache.servicemix.common,org.codehaus.xfire.service.invoker,javax.xml.stream,javax.wsdl,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.wsdl.xml,org.xml.sax,javax.jbi.component,javax.activation,org.w3c.dom,org.apache.commons.logging,org.codehaus.xfire.service,org.apache.servicemix.jsr181.xfire,org.apache.servicemix.common.endpoints,org.codehaus.xfire.attachments'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common'/>
    <p n='uses' v='javax.jbi.component,javax.management,javax.jbi.management,javax.jbi'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jsr181.packaging'/>
    <p n='uses' v='javax.jbi.messaging,javax.management,javax.jbi.component,javax.xml.namespace,org.w3c.dom,javax.jbi.servicedesc,javax.jbi.management,javax.jbi,javax.naming,org.apache.servicemix.jsr181,org.apache.servicemix.common,org.apache.servicemix.common.xbean'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.tools.wsdl)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.tools.wsdl ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.xbean)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.xbean ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.helper)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.helper
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jsr181)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jsr181 ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jsr181.packaging)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jsr181.packaging ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jsr181.xfire)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jsr181.xfire ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.aegis.type)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.aegis.type
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.annotations
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.annotations.commons)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.annotations.commons
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.attachments)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.attachments
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.client
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.exchange)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.exchange
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.fault)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.fault
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.jaxws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.jaxws
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.service
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.service.binding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.service.binding
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.service.invoker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.service.invoker
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.soap.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.soap.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.util.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.util.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.wsdl11)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.wsdl11
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.xfire.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.xfire.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.war.deployer/4.0.0.m1' presentationname='Apache ServiceMix WAR Deployer' symbolicname='org.apache.servicemix.war.deployer' uri='../org/apache/servicemix/war/org.apache.servicemix.war.deployer/4.0-m1/org.apache.servicemix.war.deployer-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12163
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix WAR Deployer'/>
    <p n='symbolicname' v='org.apache.servicemix.war.deployer'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.war.deployer'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.servicemix.kernel.filemonitor'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.war.deployer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.war.deployer
  </require>
</resource>
<resource id='org.apache.servicemix.war.deployer/4.0.0' presentationname='Apache ServiceMix WAR Deployer' symbolicname='org.apache.servicemix.war.deployer' uri='../org/apache/servicemix/war/org.apache.servicemix.war.deployer/4.0.0/org.apache.servicemix.war.deployer-4.0.0.jar' version='4.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12010
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix WAR Deployer'/>
    <p n='symbolicname' v='org.apache.servicemix.war.deployer'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.war.deployer'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.servicemix.kernel.filemonitor'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.war.deployer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.war.deployer
  </require>
</resource>
<resource id='servicemix-validation/2009.1.0' presentationname='ServiceMix :: Validation' symbolicname='servicemix-validation' uri='../org/apache/servicemix/servicemix-validation/2009.01/servicemix-validation-2009.01.jar' version='2009.1.0'>
  <description>
    Validation Service Engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28241
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Validation'/>
    <p n='symbolicname' v='servicemix-validation'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.validation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.validation.handler'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.xml.sax,javax.xml.parsers,javax.xml.transform'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.validation'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.xml.sax,org.apache.servicemix.validation.handler,org.w3c.dom,javax.jbi,javax.xml.transform,javax.xml.transform.dom,org.apache.servicemix.common.util,org.springframework.core.io,javax.xml.validation,javax.xml.parsers,org.apache.servicemix.common.endpoints,org.apache.servicemix.common,javax.xml.transform.stream,org.apache.servicemix.jbi.exception'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.exception)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.exception
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.validation)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.validation ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.validation.handler)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.validation.handler ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='servicemix-validation/2008.1.0' presentationname='ServiceMix :: Validation' symbolicname='servicemix-validation' uri='../org/apache/servicemix/servicemix-validation/2008.01/servicemix-validation-2008.01.jar' version='2008.1.0'>
  <description>
    Validation Service Engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28548
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Validation'/>
    <p n='symbolicname' v='servicemix-validation'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.validation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.validation.handler'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.xml.sax,javax.xml.parsers,javax.xml.transform'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.validation'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.xml.sax,org.apache.servicemix.validation.handler,org.w3c.dom,javax.jbi,javax.xml.transform,javax.xml.transform.dom,org.apache.servicemix.common.util,org.springframework.core.io,javax.xml.validation,javax.xml.parsers,org.apache.servicemix.common.endpoints,org.apache.servicemix.common,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.validation)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.validation ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.validation.handler)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.validation.handler ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='servicemix-soap/2009.1.0' presentationname='ServiceMix :: SOAP' symbolicname='servicemix-soap' uri='../org/apache/servicemix/servicemix-soap/2009.01/servicemix-soap-2009.01.jar' version='2009.1.0'>
  <description>
    SOAP Stack
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    73849
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: SOAP'/>
    <p n='symbolicname' v='servicemix-soap'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.handlers'/>
    <p n='uses' v='org.apache.servicemix.soap'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.handlers.security'/>
    <p n='uses' v='javax.security.auth.x500,javax.xml.namespace,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.ws.security.message.token,org.apache.servicemix.common.security,org.apache.ws.security.handler,org.springframework.core.io,org.apache.ws.security.util,org.apache.ws.security.processor,org.apache.servicemix.soap.marshalers,javax.security.auth,org.apache.servicemix.soap,org.apache.ws.security,javax.security.auth.callback'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.handlers.dom'/>
    <p n='uses' v='org.apache.servicemix.soap.handlers'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.marshalers'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.mail.util,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.servicemix.common.util,javax.xml.parsers,javax.mail.internet,javax.mail,javax.xml.transform.stream,javax.security.auth,org.apache.servicemix.soap,javax.xml.stream'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.handlers.addressing'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,org.apache.servicemix.soap.handlers,org.apache.servicemix.common.util,javax.xml.namespace,org.apache.servicemix.id,org.w3c.dom,org.apache.servicemix.soap.marshalers,org.apache.servicemix.soap'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.springframework.core.io,javax.wsdl.extensions.schema,org.apache.servicemix.common,org.apache.servicemix.soap.marshalers,javax.xml.stream,javax.wsdl,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.wsdl.xml,javax.jbi.component,org.w3c.dom,org.apache.commons.logging,javax.jbi.servicedesc,org.apache.servicemix.common.wsdl1,org.apache.servicemix.soap.handlers.addressing,javax.jbi,org.apache.servicemix.common.security,javax.wsdl.extensions,org.apache.servicemix.common.endpoints'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.security)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.security ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.wsdl1)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.wsdl1 ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.id)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.id
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.handlers)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.handlers ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.handlers.addressing)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.handlers.addressing
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.handlers.dom)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.handlers.dom ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.handlers.security)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.handlers.security
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.marshalers)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.marshalers ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='servicemix-soap/2008.1.0' presentationname='ServiceMix :: SOAP' symbolicname='servicemix-soap' uri='../org/apache/servicemix/servicemix-soap/2008.01/servicemix-soap-2008.01.jar' version='2008.1.0'>
  <description>
    SOAP Stack
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    73405
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: SOAP'/>
    <p n='symbolicname' v='servicemix-soap'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.handlers'/>
    <p n='uses' v='org.apache.servicemix.soap'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.handlers.security'/>
    <p n='uses' v='javax.security.auth.x500,javax.xml.namespace,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.ws.security.message.token,org.apache.servicemix.common.security,org.apache.ws.security.handler,org.springframework.core.io,org.apache.ws.security.util,org.apache.ws.security.processor,org.apache.servicemix.soap.marshalers,javax.security.auth,org.apache.servicemix.soap,org.apache.ws.security,javax.security.auth.callback'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.handlers.dom'/>
    <p n='uses' v='org.apache.servicemix.soap.handlers'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.marshalers'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.mail.util,org.xml.sax,javax.activation,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.servicemix.common.util,javax.xml.parsers,javax.mail.internet,javax.mail,javax.xml.transform.stream,javax.security.auth,org.apache.servicemix.soap,javax.xml.stream'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.handlers.addressing'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,org.apache.servicemix.soap.handlers,org.apache.servicemix.common.util,javax.xml.namespace,org.apache.servicemix.id,org.w3c.dom,org.apache.servicemix.soap.marshalers,org.apache.servicemix.soap'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.springframework.core.io,org.apache.servicemix.common,javax.wsdl.extensions.schema,org.apache.servicemix.soap.marshalers,javax.xml.stream,javax.wsdl,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.wsdl.xml,javax.jbi.component,org.w3c.dom,org.apache.commons.logging,javax.jbi.servicedesc,org.apache.servicemix.soap.handlers.addressing,org.apache.servicemix.common.wsdl1,javax.jbi,org.apache.servicemix.common.security,javax.wsdl.extensions,org.apache.servicemix.common.endpoints'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.security)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.security ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.wsdl1)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.wsdl1 ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.id)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.id
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.handlers)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.handlers ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.handlers.addressing)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.handlers.addressing
    
    
    
    
    
    
    
    
    
    
    
     ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.handlers.dom)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.handlers.dom ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.handlers.security)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.handlers.security
    
    
    
    
    
    
    
    
    
    
    
     ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.marshalers)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.marshalers ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.processor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='servicemix-camel/2009.1.0' presentationname='ServiceMix :: Camel' symbolicname='servicemix-camel' uri='../org/apache/servicemix/servicemix-camel/2009.01/servicemix-camel-2009.01.jar' version='2009.1.0'>
  <description>
    Camel Service Engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    44480
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Camel'/>
    <p n='symbolicname' v='servicemix-camel'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.camel.osgi'/>
    <p n='uses' v='org.apache.xbean.classloader,org.springframework.osgi.context,org.apache.servicemix.common,org.apache.xbean.spring.context,org.apache.servicemix.common.xbean,org.springframework.osgi.util,org.apache.servicemix.camel,org.osgi.framework,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.camel'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.camel'/>
    <p n='uses' v='org.apache.servicemix.id,org.apache.camel.impl,org.apache.commons.logging,javax.jbi,org.apache.camel.component.bean,org.springframework.context.support,javax.jbi.component,org.apache.servicemix.common,org.apache.servicemix.common.xbean,javax.xml.namespace,org.apache.camel.util,org.apache.servicemix.common.util,javax.jbi.management,org.apache.camel,org.springframework.context,org.apache.servicemix.jbi.exception,javax.activation,javax.xml.transform,javax.jbi.servicedesc,org.apache.camel.spring,javax.jbi.messaging,org.apache.servicemix.common.endpoints'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.camel
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.camel)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.camel ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.camel.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.camel.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.xbean)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.xbean ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.id)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.id
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.exception)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.exception
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classloader)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classloader ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='servicemix-camel/2008.1.0' presentationname='ServiceMix :: Camel' symbolicname='servicemix-camel' uri='../org/apache/servicemix/servicemix-camel/2008.01/servicemix-camel-2008.01.jar' version='2008.1.0'>
  <description>
    Camel Service Engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    40157
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Camel'/>
    <p n='symbolicname' v='servicemix-camel'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.camel'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.camel.osgi'/>
    <p n='uses' v='org.osgi.framework,org.apache.xbean.classloader,org.apache.xbean.spring.context,org.springframework.osgi.util,org.springframework.osgi.context,org.apache.servicemix.common,org.apache.servicemix.common.xbean,org.springframework.beans.factory,org.apache.servicemix.camel'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.camel'/>
    <p n='uses' v='javax.xml.namespace,javax.jbi.management,org.springframework.context.support,javax.xml.transform,org.apache.servicemix.common,org.apache.camel.util,org.apache.camel.impl,javax.jbi.messaging,javax.jbi.component,javax.activation,org.apache.servicemix.id,javax.jbi.servicedesc,org.apache.commons.logging,org.springframework.context,javax.jbi,org.apache.servicemix.common.util,org.apache.camel,org.apache.servicemix.common.endpoints,org.apache.servicemix.common.xbean,org.apache.camel.component.bean,org.apache.camel.spring'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.camel
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.component.bean)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.component.bean ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spring)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spring ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.camel)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.camel ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.camel.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.camel.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.xbean)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.xbean ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.id)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.id
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classloader)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classloader ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util
  </require>
</resource>
<resource id='servicemix-osworkflow/2008.1.0' presentationname='ServiceMix :: OSWorkflow' symbolicname='servicemix-osworkflow' uri='../org/apache/servicemix/servicemix-osworkflow/2008.01/servicemix-osworkflow-2008.01.jar' version='2008.1.0'>
  <description>
    OSWorkflow Service Engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    23639
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: OSWorkflow'/>
    <p n='symbolicname' v='servicemix-osworkflow'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.osworkflow'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.apache.servicemix.executors,com.opensymphony.workflow.config,javax.xml.namespace,org.apache.commons.logging,com.opensymphony.workflow.basic,javax.xml.transform,javax.xml.transform.dom,com.opensymphony.workflow,org.apache.servicemix.common,org.apache.servicemix.common.endpoints'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.osworkflow'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.osworkflow)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.osworkflow
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.basic)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.basic
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.config
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.osworkflow)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.osworkflow ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
</resource>
<resource id='servicemix-osworkflow/2009.1.0' presentationname='ServiceMix :: OSWorkflow' symbolicname='servicemix-osworkflow' uri='../org/apache/servicemix/servicemix-osworkflow/2009.01/servicemix-osworkflow-2009.01.jar' version='2009.1.0'>
  <description>
    OSWorkflow Service Engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    23258
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: OSWorkflow'/>
    <p n='symbolicname' v='servicemix-osworkflow'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.osworkflow'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.apache.servicemix.executors,com.opensymphony.workflow.config,javax.xml.namespace,org.apache.commons.logging,com.opensymphony.workflow.basic,javax.xml.transform,javax.xml.transform.dom,com.opensymphony.workflow,org.apache.servicemix.common,org.apache.servicemix.common.endpoints'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.osworkflow'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.osworkflow)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.osworkflow
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.basic)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.basic
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.config
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.osworkflow)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.osworkflow ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='servicemix-jms/2008.1.0' presentationname='ServiceMix :: JMS' symbolicname='servicemix-jms' uri='../org/apache/servicemix/servicemix-jms/2008.01/servicemix-jms-2008.01.jar' version='2008.1.0'>
  <description>
    JMS Binding Component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    136754
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: JMS'/>
    <p n='symbolicname' v='servicemix-jms'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jms.endpoints'/>
    <p n='uses' v='org.springframework.jms.listener,org.apache.servicemix.soap.api,org.springframework.jms.listener.serversession,javax.wsdl.extensions.soap,org.springframework.jms.support,javax.resource.spi.work,javax.xml.namespace,javax.wsdl.extensions.soap12,javax.xml.transform,javax.wsdl.factory,org.springframework.core.io,org.apache.servicemix.common,org.apache.servicemix.store.memory,org.apache.servicemix.jbi.jaxp,org.springframework.jms.listener.adapter,javax.wsdl.xml,org.apache.servicemix.soap.wsdl,javax.jbi.component,org.apache.servicemix.soap.util,org.apache.servicemix.soap.api.model,javax.jbi.servicedesc,org.apache.servicemix.store,org.apache.woden.types,javax.jms,org.apache.woden.wsdl20,org.apache.servicemix.soap.wsdl.validator,org.springframework.transaction.jta,org.springframework.jms.core,javax.resource.spi,org.jencks,org.springframework.jms,org.apache.servicemix.soap.bindings.soap,javax.jbi.management,javax.resource.spi.endpoint,org.apache.woden.wsdl20.xml,javax.transaction,org.springframework.jms.connection,javax.wsdl,javax.jbi.messaging,org.apache.servicemix.executors,org.apache.servicemix.jms,org.w3c.dom,org.apache.woden,org.apache.commons.logging,javax.jbi,org.springframework.transaction,javax.wsdl.extensions,org.springframework.jms.support.destination,org.apache.servicemix.common.endpoints,org.springframework.core.task'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jms'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,org.apache.servicemix.jms.wsdl,javax.jbi.management,javax.xml.transform,org.apache.servicemix.jms.endpoints,javax.naming,org.apache.servicemix.common,org.apache.servicemix.store.memory,org.apache.servicemix.soap.marshalers,javax.wsdl,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.jbi.component,javax.management,org.apache.commons.logging,javax.jbi.servicedesc,org.apache.servicemix.store,org.apache.servicemix.common.wsdl1,javax.jbi,org.apache.servicemix.common.security,javax.wsdl.extensions,org.apache.servicemix.common.util,org.apache.servicemix.common.endpoints,org.apache.servicemix.common.xbean,javax.jms,org.apache.servicemix.soap'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jms.multiplexing'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.executors,org.apache.servicemix.jms,org.apache.commons.logging,org.apache.servicemix.store,javax.naming,org.apache.servicemix.common,org.apache.servicemix.soap.marshalers,org.apache.servicemix.soap,javax.jms'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jms.wsdl'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util.xml'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jms.standard'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.executors,org.apache.servicemix.jms,org.apache.commons.logging,javax.naming,org.apache.servicemix.common,org.apache.servicemix.soap.marshalers,org.apache.servicemix.soap,javax.jms'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jms.jca'/>
    <p n='uses' v='javax.jbi.messaging,javax.jbi.component,javax.resource.spi,org.jencks,org.apache.servicemix.jms,org.apache.commons.logging,javax.resource.spi.endpoint,javax.naming,org.apache.servicemix.common,javax.transaction,org.apache.servicemix.soap,javax.jms'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jms.packaging'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.jms,javax.xml.namespace,org.apache.servicemix.common,org.apache.servicemix.common.xbean,org.apache.servicemix.common.packaging'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.jms'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.jms
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.work)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.work
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.packaging)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.packaging ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.security)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.security ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.wsdl1)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.wsdl1 ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.xbean)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.xbean ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jms)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jms ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jms.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jms.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jms.jca)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jms.jca ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jms.multiplexing)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jms.multiplexing ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jms.packaging)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jms.packaging ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jms.standard)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jms.standard ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jms.wsdl)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jms.wsdl ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.api)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.api ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.api.model)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.api.model ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.soap)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.soap ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.marshalers)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.marshalers ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.wsdl)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.wsdl ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.wsdl.validator)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.wsdl.validator ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store.memory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store.memory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.jencks)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jencks
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.connection ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.listener ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener.adapter)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.listener.adapter ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener.serversession)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.listener.serversession
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support.destination
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.jta)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.jta ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='servicemix-jms/2009.1.0' presentationname='ServiceMix :: JMS' symbolicname='servicemix-jms' uri='../org/apache/servicemix/servicemix-jms/2009.01/servicemix-jms-2009.01.jar' version='2009.1.0'>
  <description>
    JMS Binding Component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    145777
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: JMS'/>
    <p n='symbolicname' v='servicemix-jms'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jms.endpoints'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.springframework.jms.listener,org.springframework.jms.listener.serversession,javax.wsdl.extensions.soap,org.springframework.jms.support,javax.resource.spi.work,javax.xml.namespace,javax.wsdl.extensions.soap12,javax.xml.transform,javax.wsdl.factory,org.springframework.core.io,org.apache.servicemix.common,org.apache.servicemix.store.memory,org.apache.servicemix.jbi.jaxp,org.springframework.jms.listener.adapter,org.apache.servicemix.soap.wsdl,javax.wsdl.xml,javax.jbi.component,org.apache.servicemix.soap.util,org.apache.servicemix.soap.core,org.apache.servicemix.soap.api.model,javax.jbi.servicedesc,org.apache.servicemix.store,org.springframework.jms.support.converter,org.apache.woden.types,javax.jms,org.apache.woden.wsdl20,org.apache.servicemix.soap.wsdl.validator,org.springframework.jms.core,org.springframework.transaction.jta,javax.resource.spi,org.jencks,org.springframework.jms,org.apache.servicemix.soap.interceptors.xml,org.apache.servicemix.soap.bindings.soap,javax.jbi.management,javax.resource.spi.endpoint,org.apache.servicemix.soap.interceptors.mime,org.apache.woden.wsdl20.xml,javax.transaction,org.springframework.jms.connection,javax.xml.stream,javax.wsdl,javax.jbi.messaging,org.apache.servicemix.soap.util.stax,org.apache.servicemix.executors,org.apache.servicemix.jms,javax.activation,org.w3c.dom,org.apache.woden,org.apache.commons.logging,javax.jbi,org.springframework.transaction,javax.wsdl.extensions,org.springframework.jms.support.destination,org.apache.servicemix.common.endpoints,org.springframework.core.task'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jms'/>
    <p n='uses' v='javax.resource.spi,javax.xml.namespace,org.apache.servicemix.jms.wsdl,javax.jbi.management,javax.xml.transform,org.apache.servicemix.jms.endpoints,javax.naming,org.apache.servicemix.common,org.apache.servicemix.store.memory,org.apache.servicemix.soap.marshalers,javax.wsdl,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.jbi.component,javax.management,org.apache.commons.logging,javax.jbi.servicedesc,org.apache.servicemix.store,org.apache.servicemix.common.wsdl1,javax.jbi,org.apache.servicemix.common.security,javax.wsdl.extensions,org.apache.servicemix.common.util,org.apache.servicemix.common.endpoints,org.apache.servicemix.common.xbean,javax.jms,org.apache.servicemix.soap'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jms.multiplexing'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.executors,org.apache.servicemix.jms,org.apache.commons.logging,org.apache.servicemix.store,javax.xml.transform,javax.naming,org.apache.servicemix.common,org.apache.servicemix.soap.marshalers,org.apache.servicemix.soap,javax.jms'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jms.wsdl'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util.xml'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jms.standard'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.executors,org.apache.servicemix.jms,org.apache.commons.logging,javax.naming,org.apache.servicemix.common,org.apache.servicemix.soap.marshalers,org.apache.servicemix.soap,javax.jms'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jms.jca'/>
    <p n='uses' v='javax.jbi.messaging,javax.jbi.component,javax.resource.spi,org.jencks,org.apache.servicemix.jms,org.apache.commons.logging,javax.resource.spi.endpoint,javax.naming,org.apache.servicemix.common,javax.transaction,org.apache.servicemix.soap,javax.jms'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jms.packaging'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.jms,javax.xml.namespace,org.apache.servicemix.common,org.apache.servicemix.common.xbean,org.apache.servicemix.common.packaging'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.jms'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.jms
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.endpoint)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.endpoint
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.work)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.work
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.packaging)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.packaging ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.security)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.security ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.wsdl1)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.wsdl1 ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.xbean)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.xbean ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jms)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jms ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jms.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jms.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jms.jca)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jms.jca ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jms.multiplexing)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jms.multiplexing ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jms.packaging)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jms.packaging ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jms.standard)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jms.standard ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jms.wsdl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jms.wsdl ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.api)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.api ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.api.model)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.api.model ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.soap)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.soap ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.core)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.core ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.interceptors.mime)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.interceptors.mime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.interceptors.xml)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.interceptors.xml
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.marshalers)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.marshalers ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.util.stax)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.util.stax ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.wsdl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.wsdl ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.wsdl.validator)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.wsdl.validator ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store.memory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store.memory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jencks)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jencks
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.task
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.connection)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.connection ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.listener ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener.adapter)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.listener.adapter ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener.serversession)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.listener.serversession
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.converter)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support.converter ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support.destination
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.jta)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.jta ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='servicemix-smpp/2009.1.0' presentationname='ServiceMix :: SMPP' symbolicname='servicemix-smpp' uri='../org/apache/servicemix/servicemix-smpp/2009.01/servicemix-smpp-2009.01.jar' version='2009.1.0'>
  <description>
    SMPP Binding Component                This component provides
    
    
    
    
    
    
    
    
    
    
    
     interfaces
    
     to
     communicate
    
     with
     Message
    
    
    
     Center

         or
     ESME
    
    
     (External
    
  
      
     Short
     Message
    
     Entity).
    
      
  
  
              SMPP
  

           is a stand
    
     for Short
  
      
     Message
    
  
      
     Peer
    
 
        to Peer.
     It is
    
     a standard
    
 
    
        protocol
  
   
       
     for exchanging
    

       
      SMS
     messages
 
       

         between  

           
 
   
            SMS entities
    
     over
    
    
     TCP/IP
     or X.25
    
    
    
  
     
      connections.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    32573
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: SMPP'/>
    <p n='symbolicname' v='servicemix-smpp'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.smpp.servicemix.apache.org.smpp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.smpp'/>
    <p n='uses' v='javax.jbi.messaging,org.jsmpp.extra,org.jsmpp,org.jsmpp.util,org.apache.servicemix.jbi.helper,org.apache.commons.logging,javax.jbi.management,org.apache.servicemix.smpp.marshaler,javax.xml.transform,org.jsmpp.session,org.apache.servicemix.common,org.apache.servicemix.common.endpoints,org.jsmpp.bean'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.smpp.marshaler'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.w3c.dom,org.apache.commons.logging,org.jsmpp.bean,javax.xml.transform'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.servicemix.bundles.jaxp-ri)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.servicemix.bundles.jaxp-ri; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.smpp.servicemix.apache.org.smpp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.smpp.servicemix.apache.org.smpp
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.helper)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.helper
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.smpp)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.smpp ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.smpp.marshaler)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.smpp.marshaler ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jsmpp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jsmpp
  </require>
  <require extend='false' filter='(&amp;(package=org.jsmpp.bean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jsmpp.bean
  </require>
  <require extend='false' filter='(&amp;(package=org.jsmpp.extra)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jsmpp.extra
  </require>
  <require extend='false' filter='(&amp;(package=org.jsmpp.session)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jsmpp.session
  </require>
  <require extend='false' filter='(&amp;(package=org.jsmpp.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jsmpp.util
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='servicemix-wsn2005/2009.1.0' presentationname='ServiceMix :: WS-Notification Service Engine' symbolicname='servicemix-wsn2005' uri='../org/apache/servicemix/servicemix-wsn2005/2009.01/servicemix-wsn2005-2009.01.jar' version='2009.1.0'>
  <description>
    WS-Notification Service Engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    304546
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: WS-Notification Service Engine'/>
    <p n='symbolicname' v='servicemix-wsn2005'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.wsn.jaxws'/>
    <p n='uses' v='javax.xml.ws,javax.xml.namespace'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.wsn'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.wsn.2001'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.wsn.component'/>
    <p n='uses' v='org.apache.servicemix.id,org.apache.commons.logging,javax.jms,javax.jws,javax.jbi.component,org.apache.servicemix.common,org.apache.servicemix.wsn.jbi,javax.xml.transform.dom,org.xml.sax,javax.xml.namespace,org.apache.servicemix.common.util,javax.wsdl.xml,org.apache.servicemix.executors,javax.jbi.management,javax.naming,javax.wsdl.factory,javax.xml.ws.wsaddressing,org.springframework.core.io,org.apache.servicemix.wsn,org.w3c.dom,javax.xml.datatype,javax.wsdl,org.apache.servicemix.common.tools.wsdl,org.apache.servicemix.wsn.client,javax.xml.transform,javax.xml.bind.annotation,javax.jbi.servicedesc,org.apache.servicemix.wsn.jms,javax.xml.bind,javax.jbi.messaging,javax.xml.ws,org.apache.servicemix.common.endpoints'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.wsn.client'/>
    <p n='uses' v='javax.xml.ws.wsaddressing,javax.jbi,javax.jbi.component,org.apache.servicemix.wsn,javax.xml.parsers,org.apache.servicemix.wsn.jbi,javax.xml.transform.dom,org.w3c.dom,javax.xml.namespace,org.apache.servicemix.common.util,javax.xml.transform,javax.xml.bind.util,javax.jbi.servicedesc,org.apache.servicemix.jbi.jaxp,javax.xml.bind,javax.jbi.messaging'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.wsn.jms'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.activemq.command,javax.jms,javax.xml.parsers,org.apache.servicemix.wsn,org.apache.activemq.advisory,org.w3c.dom,org.xml.sax,javax.xml.datatype,javax.xml.namespace,javax.xml.xpath,javax.xml.bind'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.wsn.spring'/>
    <p n='uses' v='org.apache.servicemix.jbi.listener,javax.annotation,org.apache.commons.logging,javax.jms,javax.jbi,javax.jbi.component,javax.xml.namespace,org.apache.servicemix,org.apache.servicemix.jbi.jaxp,org.springframework.beans.factory,org.apache.servicemix.wsn.component,javax.xml.ws.wsaddressing,org.springframework.core.io,javax.xml.parsers,org.apache.servicemix.components.util,org.apache.servicemix.wsn,org.w3c.dom,org.apache.servicemix.wsn.client,javax.xml.transform,javax.jbi.servicedesc,javax.jbi.messaging,javax.xml.bind'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.wsn'/>
    <p n='uses' v='org.apache.servicemix.id,org.apache.commons.logging,javax.jws,javax.xml.ws.wsaddressing,javax.jbi.component,org.w3c.dom,javax.xml.datatype,javax.xml.namespace,org.apache.servicemix.common.util,org.apache.servicemix.wsn.client,javax.xml.bind'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.wsn.jbi'/>
    <p n='uses' v='org.apache.commons.logging,javax.jbi,javax.jbi.component,javax.xml.transform.dom,javax.xml.namespace,javax.xml.stream,org.apache.servicemix.common.util,org.apache.servicemix.jbi.jaxp,javax.xml.ws.wsaddressing,org.apache.servicemix.wsn,javax.xml.parsers,org.w3c.dom,org.apache.servicemix.wsn.client,javax.xml.transform,javax.jbi.servicedesc,org.apache.servicemix.wsn.jms,javax.jbi.messaging,javax.xml.bind'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.wsn)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.wsn
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.advisory)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.advisory ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.command)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.command ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.tools.wsdl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.tools.wsdl ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.components.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.components.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.id)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.id
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.wsn)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.wsn ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.wsn.2001)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.wsn.2001 ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.wsn.client)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.wsn.client ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.wsn.component)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.wsn.component ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.wsn.jaxws)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.wsn.jaxws ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.wsn.jbi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.wsn.jbi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.wsn.jms)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.wsn.jms ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.wsn.spring)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.wsn.spring ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='servicemix-wsn2005/2008.1.0' presentationname='ServiceMix :: WS-Notification Service Engine' symbolicname='servicemix-wsn2005' uri='../org/apache/servicemix/servicemix-wsn2005/2008.01/servicemix-wsn2005-2008.01.jar' version='2008.1.0'>
  <description>
    WS-Notification Service Engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    305006
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: WS-Notification Service Engine'/>
    <p n='symbolicname' v='servicemix-wsn2005'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.wsn.component'/>
    <p n='uses' v='javax.xml.namespace,javax.jbi.management,org.apache.servicemix.wsn,javax.xml.datatype,javax.xml.transform,org.apache.servicemix.common.tools.wsdl,javax.naming,javax.wsdl.factory,org.springframework.core.io,org.apache.servicemix.common,javax.xml.ws.wsaddressing,org.apache.servicemix.wsn.client,javax.xml.ws,javax.wsdl,org.apache.servicemix.wsn.jbi,javax.jbi.messaging,org.apache.servicemix.executors,javax.wsdl.xml,org.xml.sax,org.apache.servicemix.wsn.jms,javax.jbi.component,org.apache.servicemix.id,org.w3c.dom,org.apache.commons.logging,javax.jbi.servicedesc,javax.xml.bind.annotation,javax.xml.transform.dom,org.apache.servicemix.common.util,javax.jws,org.apache.servicemix.common.endpoints,javax.xml.bind,javax.jms'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.wsn.jbi'/>
    <p n='uses' v='javax.xml.namespace,org.apache.servicemix.wsn,javax.xml.transform,javax.xml.parsers,javax.xml.ws.wsaddressing,org.apache.servicemix.wsn.client,javax.xml.stream,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.apache.servicemix.wsn.jms,javax.jbi.component,org.w3c.dom,javax.jbi.servicedesc,org.apache.commons.logging,javax.jbi,javax.xml.transform.dom,org.apache.servicemix.common.util,javax.xml.bind'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.wsn.jms'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,org.apache.servicemix.wsn,javax.xml.xpath,javax.xml.datatype,javax.xml.parsers,org.apache.activemq.advisory,org.apache.activemq.command,javax.xml.bind,javax.jms'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.wsn.2001'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.wsn.jaxws'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.wsn.client'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,org.apache.servicemix.wsn.jbi,javax.jbi.messaging,javax.jbi.component,javax.xml.namespace,org.w3c.dom,javax.xml.bind.util,javax.jbi.servicedesc,org.apache.servicemix.wsn,javax.jbi,javax.xml.transform,javax.xml.transform.dom,org.apache.servicemix.common.util,javax.xml.parsers,javax.xml.ws.wsaddressing,javax.xml.bind'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.wsn'/>
    <p n='uses' v='javax.jbi.component,javax.xml.namespace,org.apache.servicemix.id,org.w3c.dom,org.apache.commons.logging,javax.xml.datatype,org.apache.servicemix.common.util,javax.jws,javax.xml.ws.wsaddressing,javax.xml.bind,org.apache.servicemix.wsn.client'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.wsn'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.wsn.spring'/>
    <p n='uses' v='org.apache.servicemix.wsn.component,javax.xml.namespace,org.apache.servicemix.wsn,org.apache.servicemix,javax.xml.transform,org.apache.servicemix.components.util,org.springframework.core.io,javax.xml.parsers,javax.xml.ws.wsaddressing,org.apache.servicemix.wsn.client,org.springframework.beans.factory,org.apache.servicemix.jbi.listener,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.jbi.component,org.w3c.dom,org.apache.commons.logging,javax.jbi.servicedesc,javax.jbi,javax.annotation,javax.xml.bind,javax.jms'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.wsn)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.wsn
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.advisory)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.advisory ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.command)(version&gt;=5.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.command ;version=5.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.tools.wsdl)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.tools.wsdl ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.components.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.components.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.id)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.id
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.wsn)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.wsn ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.wsn.2001)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.wsn.2001 ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.wsn.client)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.wsn.client ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.wsn.component)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.wsn.component ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.wsn.jaxws)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.wsn.jaxws ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.wsn.jbi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.wsn.jbi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.wsn.jms)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.wsn.jms ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.wsn.spring)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.wsn.spring ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='servicemix-script/2008.1.0' presentationname='ServiceMix :: Scripting Service Engine' symbolicname='servicemix-script' uri='../org/apache/servicemix/servicemix-script/2008.01/servicemix-script-2008.01.jar' version='2008.1.0'>
  <description>
    This pom provides the common bits for all ServiceMix components,
    
    
    
    
    
    
    
    
    
    
    
     as
     well
     as providing
    
     a
     reactor
     build
    
     for
    
     those
     components.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19048
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Scripting Service Engine'/>
    <p n='symbolicname' v='servicemix-script'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common'/>
    <p n='uses' v='javax.jbi.component,javax.management,javax.jbi.management,javax.jbi'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.script'/>
    <p n='uses' v='javax.jbi.messaging,javax.jbi.component,org.apache.servicemix.common.endpoints,org.apache.servicemix.common,org.apache.commons.logging'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.script)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.script ;version=2008.1.0
  </require>
</resource>
<resource id='servicemix-script/2009.1.0' presentationname='ServiceMix :: Scripting Service Engine' symbolicname='servicemix-script' uri='../org/apache/servicemix/servicemix-script/2009.01/servicemix-script-2009.01.jar' version='2009.1.0'>
  <description>
    This pom provides the common bits for all ServiceMix components,
    
    
    
    
    
    
    
    
    
    
    
     as
     well
     as providing
    
     a
     reactor
     build
    
     for
    
     those
     components.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18519
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Scripting Service Engine'/>
    <p n='symbolicname' v='servicemix-script'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common'/>
    <p n='uses' v='javax.jbi.component,javax.management,javax.jbi.management,javax.jbi'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.script'/>
    <p n='uses' v='javax.jbi.messaging,javax.jbi.component,org.apache.servicemix.common.endpoints,org.apache.servicemix.common,org.apache.commons.logging'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.script)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.script ;version=2009.1.0
  </require>
</resource>
<resource id='servicemix-quartz/2008.1.0' presentationname='ServiceMix :: Quartz' symbolicname='servicemix-quartz' uri='../org/apache/servicemix/servicemix-quartz/2008.01/servicemix-quartz-2008.01.jar' version='2008.1.0'>
  <description>
    Quartz Service Engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28783
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Quartz'/>
    <p n='symbolicname' v='servicemix-quartz'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.quartz'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.quartz.support'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.w3c.dom,org.apache.servicemix.quartz,javax.xml.transform,javax.xml.transform.dom,org.springframework.scheduling.quartz,org.apache.servicemix.common.util,javax.xml.parsers,org.apache.servicemix.common,org.quartz'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.quartz'/>
    <p n='uses' v='javax.jbi.messaging,org.springframework.scheduling.quartz,org.apache.servicemix.common.endpoints,org.apache.servicemix.common,org.quartz.impl,org.apache.commons.logging,javax.jbi.management,org.quartz,org.apache.servicemix.quartz.support'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.quartz)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.quartz
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.quartz)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.quartz ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.quartz.support)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.quartz.support ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.quartz
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.quartz.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.scheduling.quartz)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.scheduling.quartz ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='servicemix-quartz/2009.1.0' presentationname='ServiceMix :: Quartz' symbolicname='servicemix-quartz' uri='../org/apache/servicemix/servicemix-quartz/2009.01/servicemix-quartz-2009.01.jar' version='2009.1.0'>
  <description>
    Quartz Service Engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28523
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Quartz'/>
    <p n='symbolicname' v='servicemix-quartz'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.quartz'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.quartz.support'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.w3c.dom,org.apache.servicemix.quartz,javax.xml.transform,javax.xml.transform.dom,org.springframework.scheduling.quartz,org.apache.servicemix.common.util,javax.xml.parsers,org.apache.servicemix.common,org.quartz'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.quartz'/>
    <p n='uses' v='javax.jbi.messaging,org.springframework.scheduling.quartz,org.apache.servicemix.common.endpoints,org.apache.servicemix.common,org.quartz.impl,org.apache.commons.logging,javax.jbi.management,org.quartz,org.apache.servicemix.quartz.support'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.quartz)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.quartz
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.quartz)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.quartz ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.quartz.support)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.quartz.support ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.quartz
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.quartz.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.scheduling.quartz)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.scheduling.quartz ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.rhino/1.0.0.7R1_1' presentationname='Apache ServiceMix Bundles: js-1.7R1' symbolicname='org.apache.servicemix.bundles.rhino' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.rhino/1.7R1_1/org.apache.servicemix.bundles.rhino-1.7R1_1.jar' version='1.0.0.7R1_1'>
  <description>
    This bundle simply wraps js-1.7R1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    769581
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: js-1.7R1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.rhino'/>
    <p n='version' t='version' v='1.0.0.7R1_1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript.jdk15'/>
    <p n='uses' v='org.mozilla.javascript.jdk13,org.mozilla.javascript'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript.tools.idswitch'/>
    <p n='uses' v='org.mozilla.javascript.tools,org.mozilla.javascript'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript.jdk13'/>
    <p n='uses' v='org.mozilla.javascript'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript.xml.impl.xmlbeans'/>
    <p n='uses' v='org.apache.xmlbeans,org.mozilla.javascript,org.mozilla.javascript.xml,javax.xml.namespace'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript.regexp'/>
    <p n='uses' v='org.mozilla.javascript'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript.jdk11'/>
    <p n='uses' v='org.mozilla.javascript'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript'/>
    <p n='uses' v='org.mozilla.javascript.continuations,org.mozilla.javascript.xml,org.mozilla.classfile,org.mozilla.javascript.debug'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript.continuations'/>
    <p n='uses' v='org.mozilla.javascript'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript.tools.jsc'/>
    <p n='uses' v='org.mozilla.javascript.tools,org.mozilla.javascript,org.mozilla.javascript.optimizer'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript.optimizer'/>
    <p n='uses' v='org.mozilla.classfile,org.mozilla.javascript'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript.tools.shell'/>
    <p n='uses' v='javax.swing.text,org.mozilla.javascript,org.mozilla.javascript.tools,org.mozilla.javascript.serialize,javax.swing,javax.swing.filechooser,javax.swing.event'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript.resources'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript.xml'/>
    <p n='uses' v='org.mozilla.javascript'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript.serialize'/>
    <p n='uses' v='org.mozilla.javascript'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript.tools'/>
    <p n='uses' v='org.mozilla.javascript'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.classfile'/>
    <p n='uses' v='org.mozilla.javascript'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript.debug'/>
    <p n='uses' v='org.mozilla.javascript'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript.xmlimpl'/>
    <p n='uses' v='javax.xml.transform,org.mozilla.javascript,javax.xml.transform.stream,javax.xml.parsers,javax.xml.transform.dom,org.w3c.dom,org.xml.sax,org.mozilla.javascript.xml'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript.tools.resources'/>
    <p n='version' t='version' v='1.0.0.7R1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing.event
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.filechooser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing.filechooser
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.text)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing.text
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.classfile)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.classfile ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.continuations)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.continuations ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.debug)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.debug ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.jdk11)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.jdk11 ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.jdk13)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.jdk13 ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.jdk15)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.jdk15 ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.optimizer)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.optimizer ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.regexp)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.regexp ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.resources)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.resources ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.serialize)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.serialize ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.tools)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.tools ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.tools.idswitch)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.tools.idswitch ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.tools.jsc)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.tools.jsc ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.tools.resources)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.tools.resources ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.tools.shell)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.tools.shell ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.xml)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.xml ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.xml.impl.xmlbeans)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.xml.impl.xmlbeans ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript.xmlimpl)(version&gt;=1.0.0.7R1))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript.xmlimpl ;version=1.0.0.7R1
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jaxb-api-2.0/4.0.0.m1' presentationname='Apache ServiceMix OSGI Common Bundles: jaxb-api' symbolicname='org.apache.servicemix.bundles.jaxb-api-2.0' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jaxb-api-2.0/4.0-m1/org.apache.servicemix.bundles.jaxb-api-2.0-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    This bundle simply wraps jaxb-api-2.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    82388
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: jaxb-api'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jaxb-api-2.0'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.attachment'/>
    <p n='uses' v='javax.activation'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.helpers'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,org.w3c.dom,javax.xml.bind.annotation.adapters,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,javax.xml.parsers,javax.xml.bind,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.util'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation.adapters'/>
    <p n='uses' v='javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.parsers,org.w3c.dom,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.bind.annotation.adapters,javax.xml.transform,javax.xml.validation,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.helpers)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.helpers ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jruby/1.1.2.1' presentationname='Apache ServiceMix Bundles: jruby-1.1.2' symbolicname='org.apache.servicemix.bundles.jruby' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jruby/1.1.2_1/org.apache.servicemix.bundles.jruby-1.1.2_1.jar' version='1.1.2.1'>
  <description>
    This bundle simply wraps jruby-1.1.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    4820035
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: jruby-1.1.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jruby'/>
    <p n='version' t='version' v='1.1.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.ast.visitor.rewriter'/>
    <p n='uses' v='org.jruby.ast,org.jruby.util,org.jruby.ast.visitor,org.jruby.evaluator,org.jruby.ast.visitor.rewriter.utils,org.jruby.ast.types,org.jruby.lexer.yacc,org.jruby.parser'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jruby.objectweb.asm.util'/>
    <p n='uses' v='jruby.objectweb.asm.signature,jruby.objectweb.asm.tree.analysis,jruby.objectweb.asm.tree,jruby.objectweb.asm'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.javasupport'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby.common,org.jruby.util,org.jruby.internal.runtime.methods,org.jruby.util.collections,org.jruby.anno,org.jruby.exceptions,org.jruby.runtime.callback,org.jruby.runtime.load,org.jruby.javasupport.util,org.jruby,org.jruby.runtime,org.jruby.javasupport.proxy'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.ast.visitor'/>
    <p n='uses' v='org.jruby.evaluator,org.jruby.ast'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.America.Argentina'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.ext.posix'/>
    <p n='uses' v='com.sun.jna,org.jruby.ext.posix.util'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Antarctica'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.jna.sunos-sparcv9'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.compiler.util'/>
    <p n='uses' v='jruby.objectweb.asm.util,org.jruby.util,jruby.objectweb.asm,org.jruby.compiler.impl'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jruby.objectweb.asm.tree.analysis'/>
    <p n='uses' v='jruby.objectweb.asm.tree,jruby.objectweb.asm'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.util.io'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby.javasupport,org.jruby.util,org.jruby.anno,org.jruby.ext.posix,org.jruby.exceptions,org.jruby,org.jruby.runtime'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joni.constants'/>
    <p n='uses' v='org.joni.util'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.lexer.yacc'/>
    <p n='uses' v='org.jruby.ast,org.jruby.common,org.jruby.util,org.jruby.parser'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Indian'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.chrono'/>
    <p n='uses' v='org.joda.time,org.joda.time.format,org.joda.time.field'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joni.util'/>
    <p n='uses' v='org.joni.exception'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.demo'/>
    <p n='uses' v='javax.swing.plaf.basic,org.jruby.runtime.builtin,javax.swing.text,org.jruby.util,javax.swing.border,org.jruby.exceptions,org.jruby.runtime.callback,org.jruby.runtime.load,org.jruby.ext,jline,org.jruby,org.jruby.runtime,javax.swing,org.jruby.internal.runtime'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.format'/>
    <p n='uses' v='org.joda.time,org.joda.time.field'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.exceptions'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby,org.jruby.runtime,org.jruby.internal.runtime'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.jna.sunos-sparc'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.jna.sunos-amd64'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jline'/>
    <p n='uses' v='javax.swing'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.internal.runtime.methods'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby.ast,jruby.objectweb.asm.util,org.jruby.ast.executable,org.jruby.compiler,org.jruby.util,jruby.objectweb.asm,org.jruby.anno,org.jruby.compiler.impl,org.jruby.exceptions,org.jruby.evaluator,org.jruby.runtime.callback,org.jruby.javasupport.util,org.jruby.lexer.yacc,org.jruby,org.jruby.runtime,org.jruby.internal.runtime,org.jruby.parser'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.base'/>
    <p n='uses' v='org.joda.time.convert,org.joda.time.chrono,org.joda.time,org.joda.time.format,org.joda.time.field'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.runtime.marshal'/>
    <p n='uses' v='org.jruby.runtime.component,org.jruby.runtime.builtin,org.jruby.common,org.jruby.util,org.jruby.internal.runtime.methods,org.jruby.runtime,org.jruby,org.jruby.exceptions'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.util.collections'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Etc'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.America.Kentucky'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joni.ast'/>
    <p n='uses' v='org.joni.exception,org.joni.encoding,org.joni.constants,org.joni'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jvyamlb.events'/>
    <p n='uses' v='org.jruby.util'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.jna.freebsd-amd64'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.ast.visitor.rewriter.utils'/>
    <p n='uses' v='org.jruby.evaluator,org.jruby.ast.visitor.rewriter,org.jruby.ast,org.jruby.util,org.jruby.lexer.yacc,org.jruby.parser'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.ast.util'/>
    <p n='uses' v='org.jruby.ast,org.jruby.runtime.builtin,org.jruby.util,org.jruby,org.jruby.runtime'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.America.North_Dakota'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jvyamlb.nodes'/>
    <p n='uses' v='org.jruby.util'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.internal.runtime'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby.common,org.jruby.util.collections,org.jruby,org.jruby.runtime,org.jruby.exceptions'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.runtime.component'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby.util'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.jna.linux-i386'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.common'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby,org.jruby.runtime,org.jruby.lexer.yacc,org.jruby.internal.runtime'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.util'/>
    <p n='uses' v='org.joni.encoding,sun.misc,org.jruby.util.io,org.jruby.runtime.builtin,org.jruby.common,org.joda.time,org.jruby.exceptions,org.joni.encoding.unicode,org.jruby.runtime.load,org.joni.encoding.specific,org.jruby.ext.posix.util,org.jruby,org.jruby.runtime'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time'/>
    <p n='uses' v='org.joda.time.convert,org.joda.time.chrono,org.joda.time.format,org.joda.time.base,org.joda.time.field,org.joda.time.tz'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joni.bench'/>
    <p n='uses' v='org.joni.encoding.specific,org.joni'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.java'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby.util,org.jruby.internal.runtime.methods,org.jruby.anno,jruby.objectweb.asm,org.jruby.compiler.impl,org.jruby.exceptions,org.jruby.compiler.util,org.jruby.runtime.load,org.jruby,org.jruby.runtime'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Australia'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.libraries'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby.util,org.jruby.anno,org.jruby.exceptions,org.jruby.runtime.load,org.jruby.ext,org.jruby.ext.posix.util,org.jruby.util.io,org.jruby,org.jruby.runtime'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joni.encoding.unicode'/>
    <p n='uses' v='org.joni.util,org.joni.exception,org.joni.encoding,org.joni'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.jna.win32'/>
    <p n='uses' v='com.sun.jna'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.ext.posix.util'/>
    <p n='uses' v='org.jruby.ext.posix'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz'/>
    <p n='uses' v='org.joda.time.chrono,org.joda.time,org.joda.time.format'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.runtime'/>
    <p n='uses' v='org.jruby.internal.runtime.methods,org.jruby.runtime.marshal,org.jruby.util.collections,org.jruby.runtime.scope,org.jruby.javasupport.util,org.jruby.ast.util,org.jruby.lexer.yacc,org.jruby.internal.runtime,org.jruby.runtime.builtin,org.jruby.ast,org.jruby.common,org.jruby.util,org.jruby.libraries,org.jruby.anno,org.jruby.exceptions,org.jruby.evaluator,org.jruby.runtime.callback,org.jruby.runtime.load,org.jruby.ast.types,org.jruby,org.jruby.parser'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joni'/>
    <p n='uses' v='org.joni.ast,org.joni.util,org.joni.exception,org.joni.constants,org.joni.encoding'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Africa'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.compiler'/>
    <p n='uses' v='org.jruby.ast,org.jruby.runtime.builtin,org.jruby.ast.executable,org.jruby.util,org.jruby.internal.runtime.methods,org.jruby.exceptions,org.jruby.compiler.impl,org.jruby.compiler.yarv,org.jruby.ast.types,org.jruby.ast.util,org.jruby.runtime,org.jruby,org.jruby.lexer.yacc,org.jruby.parser'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.ast.executable'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby.common,org.jruby.internal.runtime.methods,org.jruby.exceptions,org.jruby.javasupport.util,org.jruby.runtime,org.jruby,org.jruby.lexer.yacc,org.jruby.internal.runtime,org.jruby.parser'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='builtin.javasupport'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.America.Indiana'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.jna.linux-amd64'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.util.string'/>
    <p n='uses' v='org.jruby.util'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.compiler.impl'/>
    <p n='uses' v='org.jruby.ast,org.jruby.runtime.builtin,org.jruby.ast.executable,jruby.objectweb.asm.util,org.jruby.compiler,org.jruby.util,org.jruby.internal.runtime.methods,jruby.objectweb.asm,org.jruby.exceptions,org.jruby.javasupport.util,org.jruby.ast.util,org.jruby,org.jruby.runtime,org.jruby.lexer.yacc,org.jruby.internal.runtime,org.jruby.parser'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.convert'/>
    <p n='uses' v='org.joda.time.chrono,org.joda.time,org.joda.time.format,org.joda.time.field'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.jna.darwin'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.jna'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='builtin.yaml'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='builtin.java'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.javasupport.util'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby.javasupport,org.jruby.common,org.jruby.util,org.jruby.internal.runtime.methods,org.jruby.exceptions,org.jruby.evaluator,org.jruby.ast.util,org.jruby,org.jruby.runtime,org.jruby.internal.runtime,org.jruby.parser'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joni.exception'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jvyamlb.util'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.yaml'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby.javasupport,org.jruby.util,org.joda.time,org.jruby.internal.runtime.methods,org.jvyamlb,org.jruby.exceptions,org.jvyamlb.exceptions,org.jruby.javasupport.util,org.jruby.runtime,org.jvyamlb.nodes,org.jruby'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.ast'/>
    <p n='uses' v='org.jruby.evaluator,org.jruby.util,org.jruby.ast.visitor,org.jruby.ast.types,org.jruby,org.jruby.runtime,org.jruby.lexer.yacc,org.jruby.parser'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='builtin.core_ext'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jruby.objectweb.asm.tree'/>
    <p n='uses' v='jruby.objectweb.asm'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.anno'/>
    <p n='uses' v='com.sun.mirror.type,org.jruby.util,com.sun.mirror.declaration,org.jruby.internal.runtime.methods,com.sun.mirror.apt,com.sun.mirror.util,org.jruby.runtime,org.jruby'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jvyamlb'/>
    <p n='uses' v='org.jruby.util,org.joda.time,org.jvyamlb.exceptions,org.jvyamlb.events,org.jvyamlb.tokens,org.jvyamlb.nodes,org.jvyamlb.util'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jruby'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.evaluator'/>
    <p n='uses' v='org.jruby.ast,org.jruby.runtime.builtin,org.jruby.compiler,org.jruby.common,org.jruby.util,org.jruby.internal.runtime.methods,org.jruby.exceptions,org.jruby.javasupport.util,org.jruby.ast.types,org.jruby.ast.util,org.jruby.runtime,org.jruby,org.jruby.lexer.yacc,org.jruby.internal.runtime,org.jruby.parser'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.America'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jvyamlb.exceptions'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Pacific'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.field'/>
    <p n='uses' v='org.joda.time'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='builtin.javasupport.utilities'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jruby.objectweb.asm.signature'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.environment'/>
    <p n='uses' v='org.jruby.common,org.jruby.ext.posix.util,org.jruby'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='builtin.javasupport.proxy'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joni.encoding'/>
    <p n='uses' v='org.joni.util,org.joni.encoding.specific,org.joni.exception,org.joni.constants,org.joni'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Asia'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.jna.freebsd-i386'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.runtime.scope'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby.javasupport.util,org.jruby.runtime,org.jruby,org.jruby.parser'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.compiler.yarv'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby.ast,org.jruby.ast.executable,org.jruby.util,org.jruby.ast.types,org.jruby.lexer.yacc,org.jruby,org.jruby.parser'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jruby.objectweb.asm.commons'/>
    <p n='uses' v='jruby.objectweb.asm.tree,jruby.objectweb.asm'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.jna.sunos-x86'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.ext'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby.common,org.jruby.anno,org.jruby.ext.posix,org.jruby.exceptions,org.jruby.runtime.load,org.jruby.javasupport.util,jline,org.jruby.util.io,org.jruby.runtime,org.jruby'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Europe'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jvyamlb.tokens'/>
    <p n='uses' v='org.jruby.util'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.jna.ptr'/>
    <p n='uses' v='com.sun.jna'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.ext.socket'/>
    <p n='uses' v='com.sun.jna.ptr,org.jruby.runtime.builtin,org.jruby.util,org.jruby.anno,org.jruby.exceptions,com.sun.jna,org.jruby.runtime.load,org.jruby.ext.posix.util,org.jruby.util.io,org.jruby,org.jruby.runtime'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Atlantic'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.runtime.builtin'/>
    <p n='uses' v='org.jruby.runtime,org.jruby'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='builtin'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jruby.objectweb.asm'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='builtin.javasupport.core_ext'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.runtime.callback'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby.javasupport,org.jruby.util,org.jruby.internal.runtime.methods,jruby.objectweb.asm,org.jruby.exceptions,org.jruby.compiler.impl,org.jruby.javasupport.util,org.jruby.runtime,org.jruby'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.runtime.load'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby.javasupport,org.jruby.ast.executable,org.jruby.util,jruby.objectweb.asm,org.jruby.exceptions,org.jruby,org.jruby.runtime,org.jruby.internal.runtime'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.jna.win32-x86'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joni.encoding.specific'/>
    <p n='uses' v='org.joni.util,org.joni.exception,org.joni.encoding,org.joni.encoding.unicode,org.joni'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.ast.types'/>
    <p n='uses' v='org.jruby.runtime'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.javasupport.bsf'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby.ast,org.jruby.javasupport,org.jruby.exceptions,org.jruby.evaluator,org.apache.bsf.util,org.apache.bsf,org.jruby.runtime,org.jruby,org.jruby.internal.runtime,javax.swing'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby'/>
    <p n='uses' v='jruby.objectweb.asm.util,org.jruby.compiler,org.jruby.ast.executable,org.jruby.javasupport,org.jruby.util.string,org.jruby.ext.posix,org.jruby.compiler.impl,org.jruby.javasupport.util,org.joni.exception,org.jruby.util.io,org.jruby.lexer.yacc,javax.swing,org.jruby.yaml,org.jruby.ast,org.jruby.demo,org.joda.time.format,org.jruby.anno,org.jvyamlb,org.jruby.exceptions,org.jvyamlb.exceptions,org.jruby.evaluator,org.jruby.environment,org.jruby.internal.runtime.methods,org.jruby.runtime.marshal,org.jruby.util.collections,org.joni.encoding,org.jruby.compiler.yarv,org.jruby.ext,org.jruby.ast.util,org.jvyamlb.nodes,org.jruby.internal.runtime,org.jruby.runtime.component,org.jruby.runtime.builtin,javax.swing.text,org.jruby.common,org.jruby.util,org.joda.time,org.jruby.java,jruby.objectweb.asm,org.jruby.runtime.callback,org.jruby.runtime.load,org.joni.encoding.specific,org.jruby.ext.posix.util,org.jruby.runtime,org.joni,org.jruby.parser'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.javasupport.proxy'/>
    <p n='uses' v='org.jruby.runtime.builtin,org.jruby.javasupport,org.jruby.util,org.jruby.internal.runtime.methods,jruby.objectweb.asm,org.jruby.anno,org.jruby.exceptions,jruby.objectweb.asm.commons,org.jruby.javasupport.util,org.jruby,org.jruby.runtime'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jruby.parser'/>
    <p n='uses' v='org.jruby.ast,org.jruby.runtime.builtin,org.jruby.common,org.jruby.util,org.jruby.runtime.scope,org.jruby.exceptions,org.jruby.ast.types,org.jruby.lexer.yacc,org.jruby.runtime,org.jruby'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=builtin)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package builtin ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=builtin.core_ext)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package builtin.core_ext ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=builtin.java)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package builtin.java ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=builtin.javasupport)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package builtin.javasupport ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=builtin.javasupport.core_ext)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package builtin.javasupport.core_ext ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=builtin.javasupport.proxy)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package builtin.javasupport.proxy ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=builtin.javasupport.utilities)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package builtin.javasupport.utilities ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=builtin.yaml)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package builtin.yaml ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.jna)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package com.sun.jna ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.jna.darwin)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package com.sun.jna.darwin ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.jna.freebsd-amd64)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package com.sun.jna.freebsd-amd64 ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.jna.freebsd-i386)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package com.sun.jna.freebsd-i386 ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.jna.linux-amd64)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package com.sun.jna.linux-amd64 ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.jna.linux-i386)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package com.sun.jna.linux-i386 ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.jna.ptr)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package com.sun.jna.ptr ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.jna.sunos-amd64)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package com.sun.jna.sunos-amd64 ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.jna.sunos-sparc)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package com.sun.jna.sunos-sparc ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.jna.sunos-sparcv9)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package com.sun.jna.sunos-sparcv9 ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.jna.sunos-x86)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package com.sun.jna.sunos-x86 ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.jna.win32)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package com.sun.jna.win32 ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.jna.win32-x86)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package com.sun.jna.win32-x86 ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.mirror.apt)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.mirror.apt
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.mirror.declaration)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.mirror.declaration
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.mirror.type)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.mirror.type
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.mirror.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.mirror.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.border)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing.border
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.plaf.basic)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing.plaf.basic
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.text)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing.text
  </require>
  <require extend='false' filter='(&amp;(package=jline)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package jline ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=jruby)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package jruby ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=jruby.objectweb.asm)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package jruby.objectweb.asm ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=jruby.objectweb.asm.commons)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package jruby.objectweb.asm.commons ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=jruby.objectweb.asm.signature)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package jruby.objectweb.asm.signature ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=jruby.objectweb.asm.tree)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package jruby.objectweb.asm.tree ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=jruby.objectweb.asm.tree.analysis)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package jruby.objectweb.asm.tree.analysis ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=jruby.objectweb.asm.util)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package jruby.objectweb.asm.util ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.bsf)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.bsf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.bsf.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.bsf.util
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.base)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.base ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.chrono)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.chrono ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.convert)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.convert ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.field)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.field ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.format)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.format ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.tz ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.tz.data ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Africa)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.tz.data.Africa ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.America)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.tz.data.America ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.America.Argentina)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.tz.data.America.Argentina ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.America.Indiana)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.tz.data.America.Indiana ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.America.Kentucky)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.tz.data.America.Kentucky ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.America.North_Dakota)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.tz.data.America.North_Dakota ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Antarctica)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.tz.data.Antarctica ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Asia)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.tz.data.Asia ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Atlantic)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.tz.data.Atlantic ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Australia)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.tz.data.Australia ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Etc)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.tz.data.Etc ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Europe)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.tz.data.Europe ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Indian)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.tz.data.Indian ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Pacific)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.tz.data.Pacific ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joni)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joni ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joni.ast)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joni.ast ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joni.bench)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joni.bench ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joni.constants)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joni.constants ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joni.encoding)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joni.encoding ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joni.encoding.specific)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joni.encoding.specific ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joni.encoding.unicode)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joni.encoding.unicode ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joni.exception)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joni.exception ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joni.util)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.joni.util ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.anno)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.anno ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.ast)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.ast ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.ast.executable)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.ast.executable ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.ast.types)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.ast.types ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.ast.util)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.ast.util ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.ast.visitor)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.ast.visitor ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.ast.visitor.rewriter)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.ast.visitor.rewriter ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.ast.visitor.rewriter.utils)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.ast.visitor.rewriter.utils ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.common)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.common ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.compiler)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.compiler ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.compiler.impl)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.compiler.impl ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.compiler.util)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.compiler.util ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.compiler.yarv)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.compiler.yarv ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.demo)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.demo ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.environment)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.environment ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.evaluator)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.evaluator ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.exceptions)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.exceptions ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.ext)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.ext ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.ext.posix)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.ext.posix ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.ext.posix.util)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.ext.posix.util ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.ext.socket)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.ext.socket ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.internal.runtime)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.internal.runtime ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.internal.runtime.methods)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.internal.runtime.methods ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.java)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.java ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.javasupport)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.javasupport ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.javasupport.bsf)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.javasupport.bsf ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.javasupport.proxy)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.javasupport.proxy ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.javasupport.util)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.javasupport.util ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.lexer.yacc)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.lexer.yacc ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.libraries)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.libraries ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.parser)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.parser ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.runtime)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.runtime ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.runtime.builtin)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.runtime.builtin ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.runtime.callback)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.runtime.callback ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.runtime.component)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.runtime.component ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.runtime.load)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.runtime.load ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.runtime.marshal)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.runtime.marshal ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.runtime.scope)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.runtime.scope ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.util)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.util ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.util.collections)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.util.collections ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.util.io)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.util.io ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.util.string)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.util.string ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jruby.yaml)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jruby.yaml ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jvyamlb)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jvyamlb ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jvyamlb.events)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jvyamlb.events ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jvyamlb.exceptions)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jvyamlb.exceptions ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jvyamlb.nodes)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jvyamlb.nodes ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jvyamlb.tokens)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jvyamlb.tokens ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jvyamlb.util)(version&gt;=1.1.2))' multiple='false' name='package' optional='true'>
    Import package org.jvyamlb.util ;version=1.1.2
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.xmlsec/1.3.0.1' presentationname='Apache ServiceMix Bundles: xmlsec-1.3.0' symbolicname='org.apache.servicemix.bundles.xmlsec' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.xmlsec/1.3.0_1/org.apache.servicemix.bundles.xmlsec-1.3.0_1.jar' version='1.3.0.1'>
  <description>
    This bundle simply wraps xmlsec-1.3.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    297130
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: xmlsec-1.3.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.xmlsec'/>
    <p n='version' t='version' v='1.3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.resource.schema'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.transforms.implementations'/>
    <p n='uses' v='org.apache.xpath.functions,org.xml.sax,org.apache.xml.security.exceptions,org.w3c.dom,org.apache.commons.logging,org.apache.xml.security.transforms,org.apache.xml.security.transforms.params,javax.xml.transform,javax.xml.transform.dom,org.apache.xml.security.c14n,org.apache.xml.utils,org.apache.xml.security.c14n.implementations,org.apache.xpath.objects,javax.xml.parsers,org.apache.xpath,org.apache.xml.security.utils,javax.xml.transform.stream,org.apache.xml.security.signature,org.apache.xml.dtm'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.keys.content.keyvalues'/>
    <p n='uses' v='org.apache.xml.security.exceptions,org.w3c.dom,org.apache.xml.security.utils,org.apache.commons.logging'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.keys.storage.implementations'/>
    <p n='uses' v='org.apache.xml.security.keys.storage,org.apache.xml.security.keys.content.x509,org.apache.commons.logging,org.apache.xml.security.utils'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.utils.resolver.implementations'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.xml.security.utils.resolver,org.w3c.dom,org.apache.xml.security.utils,org.apache.commons.logging,org.apache.xml.security.signature'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.resource'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.transforms'/>
    <p n='uses' v='org.apache.xml.security.c14n,org.xml.sax,javax.xml.parsers,org.w3c.dom,org.apache.xml.security.exceptions,org.apache.commons.logging,org.apache.xml.security.utils,org.apache.xml.security.signature'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.encryption'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.xml.security.exceptions,org.apache.commons.logging,javax.crypto,org.apache.xml.security.transforms,org.apache.xml.security.algorithms,org.apache.xml.security.c14n,org.apache.xml.security.keys,org.apache.xml.utils,org.apache.xml.security.keys.keyresolver,org.apache.xml.security.utils.resolver,javax.crypto.spec,javax.xml.parsers,org.apache.xml.security.utils,org.apache.xml.security.keys.keyresolver.implementations,org.apache.xml.security.signature'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.keys'/>
    <p n='uses' v='org.apache.xml.security.keys.content.keyvalues,org.apache.xml.security.exceptions,org.w3c.dom,org.apache.commons.logging,javax.crypto,org.apache.xml.security.transforms,org.apache.xml.security.encryption,org.apache.xml.security.keys.keyresolver,org.apache.xml.security.keys.content,org.apache.xml.security.keys.storage,org.apache.xml.security.utils'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.c14n.helper'/>
    <p n='uses' v='org.apache.xml.security.c14n,org.w3c.dom'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.keys.keyresolver'/>
    <p n='uses' v='org.apache.xml.security.keys.storage,org.w3c.dom,org.apache.xml.security.exceptions,org.apache.commons.logging,javax.crypto'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.c14n.implementations'/>
    <p n='uses' v='org.apache.xml.security.c14n,org.apache.xml.security.c14n.helper,org.xml.sax,javax.xml.parsers,org.w3c.dom,org.apache.xml.security.utils,org.apache.xml.security.signature,org.apache.xml.security.transforms.params'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.utils.resolver'/>
    <p n='uses' v='org.apache.xml.security.exceptions,org.w3c.dom,org.apache.commons.logging,org.apache.xml.security.signature'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.keys.storage'/>
    <p n='uses' v='org.apache.xml.security.keys.storage.implementations,org.apache.xml.security.exceptions,org.apache.commons.logging'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.utils'/>
    <p n='uses' v='org.apache.xml.security.transforms.implementations,javax.xml.transform,javax.xml.parsers,org.apache.xpath.objects,org.apache.xpath,org.apache.xml.dtm,org.xml.sax,org.w3c.dom,org.apache.xml.security.exceptions,org.apache.commons.logging,org.apache.xml.security,org.apache.xpath.compiler,org.apache.xml.security.algorithms,org.apache.xml.security.c14n,org.apache.xml.utils,org.w3c.dom.traversal,org.apache.xml.security.signature'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.algorithms.implementations'/>
    <p n='uses' v='org.w3c.dom,org.apache.xml.security.utils,org.apache.commons.logging,javax.crypto,org.apache.xml.security.signature,org.apache.xml.security.algorithms'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.exceptions'/>
    <p n='uses' v='org.apache.xml.security.utils'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security'/>
    <p n='uses' v='org.apache.xml.security.c14n,org.apache.xml.security.keys,org.apache.xml.security.keys.keyresolver,org.apache.xml.security.utils.resolver,javax.xml.parsers,org.w3c.dom,org.apache.xml.security.utils,org.apache.commons.logging,org.apache.xml.security.transforms,org.apache.xml.security.algorithms'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.transforms.params'/>
    <p n='uses' v='org.apache.xml.security.exceptions,org.w3c.dom,org.apache.xml.security.utils,org.apache.xml.security.transforms'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.algorithms'/>
    <p n='uses' v='org.w3c.dom,org.apache.xml.security.exceptions,org.apache.commons.logging,org.apache.xml.security.utils,org.apache.xml.security.algorithms.implementations,org.apache.xml.security.signature'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.c14n'/>
    <p n='uses' v='org.xml.sax,javax.xml.parsers,org.w3c.dom,org.apache.xml.security.exceptions,org.apache.xml.security.utils'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.keys.content'/>
    <p n='uses' v='org.apache.xml.security.keys.content.keyvalues,org.apache.xml.security.keys.content.x509,org.apache.xml.security.exceptions,org.w3c.dom,org.apache.xml.security.utils,org.apache.commons.logging,org.apache.xml.security.signature,org.apache.xml.security.transforms'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.keys.content.x509'/>
    <p n='uses' v='org.w3c.dom,org.apache.xml.security.exceptions,sun.security.util,org.apache.commons.logging,org.bouncycastle.asn1,org.apache.xml.security.utils'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.signature'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,org.apache.xml.security.exceptions,org.apache.commons.logging,javax.crypto,org.apache.xml.security.transforms,org.apache.xml.security.algorithms,org.apache.xml.security.transforms.params,org.apache.xml.security.c14n,org.apache.xml.security.keys,org.apache.xml.security.c14n.helper,org.apache.xml.security.c14n.implementations,org.apache.xml.security.keys.content,org.apache.xml.security.utils.resolver,javax.crypto.spec,javax.xml.parsers,org.apache.xml.security.utils'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.keys.keyresolver.implementations'/>
    <p n='uses' v='org.apache.xml.security.keys.content.keyvalues,org.xml.sax,org.apache.xml.security.exceptions,org.w3c.dom,org.apache.commons.logging,javax.crypto,org.apache.xml.security.transforms,org.apache.xml.security.encryption,org.apache.xml.security.keys.keyresolver,org.apache.xml.security.keys.content,org.apache.xml.security.utils.resolver,javax.xml.parsers,org.apache.xml.security.keys.storage,org.apache.xml.security.keys.content.x509,org.apache.xml.security.utils,org.apache.xml.security.signature'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto.spec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto.spec
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.dtm)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xml.dtm
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.algorithms)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.algorithms ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.algorithms.implementations)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.algorithms.implementations
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.c14n)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.c14n ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.c14n.helper)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.c14n.helper ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.c14n.implementations)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.c14n.implementations
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.encryption)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.encryption ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.exceptions)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.exceptions ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content.keyvalues)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content.keyvalues
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content.x509)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content.x509 ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.keyresolver)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.keyresolver ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.keyresolver.implementations)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.keyresolver.implementations
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.storage)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.storage ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.storage.implementations)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.storage.implementations
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.resource)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.resource ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.resource.schema)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.resource.schema ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.signature)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.signature ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.transforms)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.transforms ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.transforms.implementations)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.transforms.implementations
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.transforms.params)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.transforms.params ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.utils)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.utils ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.utils.resolver)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.utils.resolver ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.utils.resolver.implementations)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.utils.resolver.implementations
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xml.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath.compiler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xpath.compiler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath.functions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xpath.functions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath.objects)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xpath.objects
  </require>
  <require extend='false' filter='(&amp;(package=org.bouncycastle.asn1)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.bouncycastle.asn1
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=sun.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.security.util
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.xmlsec/1.4.2.1' presentationname='Apache ServiceMix Bundles: xmlsec-1.4.2' symbolicname='org.apache.servicemix.bundles.xmlsec' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.xmlsec/1.4.2_1/org.apache.servicemix.bundles.xmlsec-1.4.2_1.jar' version='1.4.2.1'>
  <description>
    This bundle simply wraps xmlsec-1.4.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    455179
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: xmlsec-1.4.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.xmlsec'/>
    <p n='version' t='version' v='1.4.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.keys.keyresolver'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.xml.security.keys.storage,org.apache.xml.security.exceptions,javax.crypto,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jcp.xml.dsig.internal'/>
    <p n='uses' v='org.apache.xml.security.utils,javax.crypto'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.keys.keyresolver.implementations'/>
    <p n='uses' v='org.apache.xml.security.keys.keyresolver,org.apache.commons.logging,org.apache.xml.security.c14n,org.apache.xml.security.keys.content.x509,javax.xml.parsers,org.apache.xml.security.utils.resolver,javax.crypto,org.apache.xml.security.encryption,org.w3c.dom,org.xml.sax,org.apache.xml.security.keys.storage,org.apache.xml.security.keys.content.keyvalues,org.apache.xml.security.utils,org.apache.xml.security.signature,org.apache.xml.security.exceptions,org.apache.xml.security.keys.content,org.apache.xml.security.transforms'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.c14n.implementations'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.xml.security.c14n,javax.xml.parsers,org.w3c.dom,org.xml.sax,org.apache.xml.security.c14n.helper,org.apache.xml.security.utils,org.apache.xml.security.signature,org.apache.xml.security.transforms.params'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.algorithms'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.xml.security.utils,org.apache.xml.security.signature,org.apache.xml.security.exceptions,org.apache.xml.security.algorithms.implementations,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.crypto.dsig.keyinfo'/>
    <p n='uses' v='javax.xml.crypto.dsig,javax.xml.crypto'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.resource.schema'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.utils'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.commons.logging,org.apache.xml.dtm,org.apache.xml.security.c14n,org.apache.xml.security.transforms.implementations,org.apache.xml.security.algorithms,org.apache.xpath.objects,org.w3c.dom.traversal,org.w3c.dom,org.xml.sax,org.apache.xml.security.signature,org.apache.xml.security.exceptions,org.apache.xpath,org.apache.xml.security,javax.xml.transform,org.apache.xpath.compiler'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.c14n.helper'/>
    <p n='uses' v='org.apache.xml.security.c14n,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.keys.content.keyvalues'/>
    <p n='uses' v='org.apache.xml.security.utils,org.apache.xml.security.exceptions,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.exceptions'/>
    <p n='uses' v='org.apache.xml.security.utils'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security'/>
    <p n='uses' v='org.apache.xml.security.keys.keyresolver,org.apache.commons.logging,org.apache.xml.security.c14n,org.apache.xml.security.algorithms,javax.xml.parsers,org.apache.xml.security.utils.resolver,org.w3c.dom,org.apache.xml.security.utils,org.apache.xml.security.keys,org.apache.xml.security.transforms'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.keys'/>
    <p n='uses' v='org.apache.xml.security.keys.keyresolver,org.apache.commons.logging,javax.crypto,org.apache.xml.security.encryption,org.w3c.dom,org.apache.xml.security.utils,org.apache.xml.security.keys.storage,org.apache.xml.security.keys.content.keyvalues,org.apache.xml.security.exceptions,org.apache.xml.security.keys.content,org.apache.xml.security.transforms'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.keys.content'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.xml.security.keys.content.keyvalues,org.apache.xml.security.utils,org.apache.xml.security.signature,org.apache.xml.security.exceptions,org.apache.xml.security.keys.content.x509,org.apache.xml.security.transforms,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.transforms'/>
    <p n='uses' v='org.apache.xml.security.utils,org.apache.commons.logging,org.apache.xml.security.c14n,org.apache.xml.security.signature,org.apache.xml.security.exceptions,javax.xml.parsers,org.w3c.dom,org.xml.sax'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jcp.xml.dsig.internal.dom'/>
    <p n='uses' v='org.jcp.xml.dsig.internal,javax.xml.crypto.dsig.keyinfo,org.apache.xml.security.utils,org.apache.xml.security.exceptions,org.apache.xml.security,org.apache.xml.security.transforms,javax.security.auth.x500,org.apache.xml.security.c14n,javax.xml.crypto.dsig.dom,javax.xml.parsers,org.apache.xml.security.utils.resolver,javax.crypto,org.w3c.dom,org.apache.xml.security.signature,javax.xml.crypto.dsig,javax.xml.crypto,javax.xml.crypto.dsig.spec,javax.xml.crypto.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.keys.storage.implementations'/>
    <p n='uses' v='org.apache.xml.security.keys.storage,org.apache.commons.logging,org.apache.xml.security.utils,org.apache.xml.security.keys.content.x509'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.c14n'/>
    <p n='uses' v='org.apache.xml.security.utils,org.apache.xml.security.exceptions,javax.xml.parsers,org.w3c.dom,org.xml.sax'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.transforms.implementations'/>
    <p n='uses' v='org.apache.xml.dtm,org.apache.commons.logging,org.apache.xml.security.c14n.implementations,org.apache.xpath.functions,org.apache.xpath.objects,javax.xml.transform.dom,org.xml.sax,org.apache.xml.security.utils,org.apache.xml.security.exceptions,org.apache.xpath,org.apache.xml.security.transforms,org.apache.xml.utils,org.apache.xml.security.c14n,javax.xml.parsers,javax.xml,org.w3c.dom,org.apache.xml.security.signature,javax.xml.transform,org.apache.xml.security.transforms.params,javax.xml.transform.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.crypto.dsig.dom'/>
    <p n='uses' v='javax.xml.crypto.dsig,javax.xml.crypto,javax.xml.crypto.dom,org.w3c.dom'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.keys.content.x509'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.xml.security.utils,org.apache.xml.security.exceptions,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.utils.resolver.implementations'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.commons.logging,org.apache.xml.security.utils,org.apache.xml.security.signature,org.apache.xml.security.utils.resolver,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.utils.resolver'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.xml.security.exceptions,org.apache.xml.security.signature,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.encryption'/>
    <p n='uses' v='org.apache.xml.security.keys.keyresolver,org.apache.xml.utils,org.apache.commons.logging,org.apache.xml.security.keys.keyresolver.implementations,org.apache.xml.security.c14n,org.apache.xml.security.algorithms,javax.xml.parsers,org.apache.xml.security.utils.resolver,javax.crypto,org.w3c.dom,org.xml.sax,javax.crypto.spec,org.apache.xml.security.utils,org.apache.xml.security.signature,org.apache.xml.security.exceptions,org.apache.xml.security.keys,org.apache.xml.security.transforms'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.keys.storage'/>
    <p n='uses' v='org.apache.xml.security.keys.storage.implementations,org.apache.commons.logging,org.apache.xml.security.exceptions'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.signature'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.xml.security.c14n,org.apache.xml.security.c14n.implementations,org.apache.xml.security.algorithms,javax.xml.parsers,org.apache.xml.security.utils.resolver,javax.crypto,org.w3c.dom,org.xml.sax,javax.crypto.spec,org.apache.xml.security.c14n.helper,org.apache.xml.security.utils,org.apache.xml.security.exceptions,org.apache.xml.security.keys.content,org.apache.xml.security.keys,org.apache.xml.security.transforms.params,org.apache.xml.security.transforms'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.resource'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.transforms.params'/>
    <p n='uses' v='org.apache.xml.security.utils,org.apache.xml.security.exceptions,org.apache.xml.security.transforms,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.security.algorithms.implementations'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.xml.security.utils,org.apache.xml.security.signature,org.apache.xml.security.algorithms,javax.crypto,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.crypto.dsig'/>
    <p n='uses' v='javax.xml.crypto.dsig.keyinfo,javax.xml.crypto,javax.xml.crypto.dsig.spec'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.crypto'/>
    <p n='uses' v='javax.xml.crypto.dsig.keyinfo'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.crypto.dsig.spec'/>
    <p n='uses' v='javax.xml.crypto'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.crypto.dom'/>
    <p n='uses' v='javax.xml.crypto,org.w3c.dom'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto.spec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto.spec
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.crypto)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package javax.xml.crypto ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.crypto.dom)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package javax.xml.crypto.dom ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.crypto.dsig)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package javax.xml.crypto.dsig ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.crypto.dsig.dom)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package javax.xml.crypto.dsig.dom ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.crypto.dsig.keyinfo)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package javax.xml.crypto.dsig.keyinfo ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.crypto.dsig.spec)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package javax.xml.crypto.dsig.spec ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.dtm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.dtm
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.algorithms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.algorithms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.algorithms.implementations)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.algorithms.implementations
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.c14n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.c14n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.c14n.helper)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.c14n.helper
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.c14n.implementations)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.c14n.implementations
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.encryption)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.encryption
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.exceptions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.exceptions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content.keyvalues)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content.keyvalues
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content.x509)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content.x509
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.keyresolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.keyresolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.keyresolver.implementations)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.keyresolver.implementations
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.storage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.storage
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.storage.implementations)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.storage.implementations
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.resource.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.resource.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.signature)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.signature
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.transforms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.transforms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.transforms.implementations)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.transforms.implementations
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.transforms.params)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.transforms.params
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.utils.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.utils.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.utils.resolver.implementations)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.utils.resolver.implementations
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath.compiler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath.compiler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath.functions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath.functions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath.objects)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath.objects
  </require>
  <require extend='false' filter='(&amp;(package=org.jcp.xml.dsig.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jcp.xml.dsig.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.jcp.xml.dsig.internal.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jcp.xml.dsig.internal.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.xpp3/1.1.0.4c_1' presentationname='Apache ServiceMix Bundles: xpp3-1.1.4c' symbolicname='org.apache.servicemix.bundles.xpp3' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.xpp3/1.1.4c_1/org.apache.servicemix.bundles.xpp3-1.1.4c_1.jar' version='1.1.0.4c_1'>
  <description>
    This bundle simply wraps xpp3-1.1.4c.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    126843
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: xpp3-1.1.4c'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.xpp3'/>
    <p n='version' t='version' v='1.1.0.4c_1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlpull.v1.dom2_builder'/>
    <p n='uses' v='org.xmlpull.v1,javax.xml.parsers,org.w3c.dom'/>
    <p n='version' t='version' v='1.1.0.4c'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlpull.v1.parser_pool'/>
    <p n='uses' v='org.xmlpull.v1'/>
    <p n='version' t='version' v='1.1.0.4c'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlpull.v1.util'/>
    <p n='uses' v='org.xmlpull.v1'/>
    <p n='version' t='version' v='1.1.0.4c'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlpull.v1.sax2'/>
    <p n='uses' v='org.xml.sax,org.xmlpull.v1,org.xml.sax.helpers'/>
    <p n='version' t='version' v='1.1.0.4c'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlpull.v1.builder.impl'/>
    <p n='uses' v='org.xmlpull.v1,org.xmlpull.v1.builder'/>
    <p n='version' t='version' v='1.1.0.4c'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlpull.v1.wrapper'/>
    <p n='uses' v='org.xmlpull.v1,org.xmlpull.v1.wrapper.classic'/>
    <p n='version' t='version' v='1.1.0.4c'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlpull.v1'/>
    <p n='version' t='version' v='1.1.0.4c'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlpull.mxp1'/>
    <p n='uses' v='org.xmlpull.v1,org.xmlpull.mxp1_serializer'/>
    <p n='version' t='version' v='1.1.0.4c'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlpull.v1.wrapper.classic'/>
    <p n='uses' v='org.xmlpull.v1.util,org.xmlpull.v1.wrapper,org.xmlpull.v1'/>
    <p n='version' t='version' v='1.1.0.4c'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlpull.v1.builder'/>
    <p n='uses' v='org.xmlpull.v1.builder.impl,org.xmlpull.v1'/>
    <p n='version' t='version' v='1.1.0.4c'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlpull.mxp1_serializer'/>
    <p n='uses' v='org.xmlpull.v1'/>
    <p n='version' t='version' v='1.1.0.4c'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlpull.v1.builder.adapter'/>
    <p n='uses' v='org.xmlpull.v1.builder'/>
    <p n='version' t='version' v='1.1.0.4c'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.mxp1)(version&gt;=1.1.0.4c))' multiple='false' name='package' optional='false'>
    Import package org.xmlpull.mxp1 ;version=1.1.0.4c
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.mxp1_serializer)(version&gt;=1.1.0.4c))' multiple='false' name='package' optional='false'>
    Import package org.xmlpull.mxp1_serializer ;version=1.1.0.4c
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.v1)(version&gt;=1.1.0.4c))' multiple='false' name='package' optional='false'>
    Import package org.xmlpull.v1 ;version=1.1.0.4c
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.v1.builder)(version&gt;=1.1.0.4c))' multiple='false' name='package' optional='false'>
    Import package org.xmlpull.v1.builder ;version=1.1.0.4c
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.v1.builder.adapter)(version&gt;=1.1.0.4c))' multiple='false' name='package' optional='false'>
    Import package org.xmlpull.v1.builder.adapter ;version=1.1.0.4c
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.v1.builder.impl)(version&gt;=1.1.0.4c))' multiple='false' name='package' optional='false'>
    Import package org.xmlpull.v1.builder.impl ;version=1.1.0.4c
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.v1.dom2_builder)(version&gt;=1.1.0.4c))' multiple='false' name='package' optional='false'>
    Import package org.xmlpull.v1.dom2_builder ;version=1.1.0.4c
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.v1.parser_pool)(version&gt;=1.1.0.4c))' multiple='false' name='package' optional='false'>
    Import package org.xmlpull.v1.parser_pool ;version=1.1.0.4c
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.v1.sax2)(version&gt;=1.1.0.4c))' multiple='false' name='package' optional='false'>
    Import package org.xmlpull.v1.sax2 ;version=1.1.0.4c
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.v1.util)(version&gt;=1.1.0.4c))' multiple='false' name='package' optional='false'>
    Import package org.xmlpull.v1.util ;version=1.1.0.4c
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.v1.wrapper)(version&gt;=1.1.0.4c))' multiple='false' name='package' optional='false'>
    Import package org.xmlpull.v1.wrapper ;version=1.1.0.4c
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.v1.wrapper.classic)(version&gt;=1.1.0.4c))' multiple='false' name='package' optional='false'>
    Import package org.xmlpull.v1.wrapper.classic ;version=1.1.0.4c
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.irclib/1.10.0.1' presentationname='Apache ServiceMix Bundles: irclib-1.10' symbolicname='org.apache.servicemix.bundles.irclib' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.irclib/1.10_1/org.apache.servicemix.bundles.irclib-1.10_1.jar' version='1.10.0.1'>
  <description>
    This bundle simply wraps irclib-1.10.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    38002
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: irclib-1.10'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.irclib'/>
    <p n='version' t='version' v='1.10.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.schwering.irc.lib.ssl'/>
    <p n='uses' v='com.sun.net.ssl,javax.net,org.schwering.irc.lib,com.sun.net.ssl.internal.ssl,javax.net.ssl'/>
    <p n='version' t='version' v='1.10.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.schwering.irc.lib'/>
    <p n='uses' v='com.sun.net.ssl,javax.net,com.sun.net.ssl.internal.ssl,javax.net.ssl'/>
    <p n='version' t='version' v='1.10.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.net.ssl.internal.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.net.ssl.internal.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.schwering.irc.lib)(version&gt;=1.10.0))' multiple='false' name='package' optional='false'>
    Import package org.schwering.irc.lib ;version=1.10.0
  </require>
  <require extend='false' filter='(&amp;(package=org.schwering.irc.lib.ssl)(version&gt;=1.10.0))' multiple='false' name='package' optional='false'>
    Import package org.schwering.irc.lib.ssl ;version=1.10.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jettison/1.0.1.1' presentationname='Apache ServiceMix Bundles: jettison-1.0.1' symbolicname='org.apache.servicemix.bundles.jettison' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jettison/1.0.1_1/org.apache.servicemix.bundles.jettison-1.0.1_1.jar' version='1.0.1.1'>
  <description>
    This bundle simply wraps jettison-1.0.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    59581
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: jettison-1.0.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jettison'/>
    <p n='version' t='version' v='1.0.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.jettison.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.jettison.mapped'/>
    <p n='uses' v='org.codehaus.jettison.util,org.codehaus.jettison,org.codehaus.jettison.json,javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.jettison'/>
    <p n='uses' v='org.codehaus.jettison.util,org.codehaus.jettison.json,javax.xml.namespace,javax.xml.transform.stream,javax.xml.stream,javax.xml.transform,javax.xml.stream.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.jettison.json'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.jettison.badgerfish'/>
    <p n='uses' v='org.codehaus.jettison.util,org.codehaus.jettison,org.codehaus.jettison.json,javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.jettison
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.badgerfish)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.jettison.badgerfish
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.json)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.jettison.json
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.jettison.mapped
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.jettison.util
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.xerces/2.9.1.1' presentationname='Apache ServiceMix Bundles: xercesImpl-2.9.1' symbolicname='org.apache.servicemix.bundles.xerces' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.xerces/2.9.1_1/org.apache.servicemix.bundles.xerces-2.9.1_1.jar' version='2.9.1.1'>
  <description>
    This bundle simply wraps xercesImpl-2.9.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1247947
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: xercesImpl-2.9.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.xerces'/>
    <p n='version' t='version' v='2.9.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.xpointer'/>
    <p n='uses' v='org.apache.xerces.xs,org.apache.xerces.util,org.apache.xerces.xinclude,org.apache.xerces.impl.dv,org.apache.xerces.xni.parser,org.apache.xerces.xni,org.apache.xerces.impl'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.xni.grammars'/>
    <p n='uses' v='org.apache.xerces.xs,org.apache.xerces.xni.parser,org.apache.xerces.xni'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl.xs.util'/>
    <p n='uses' v='org.apache.xerces.util,org.apache.xerces.xs,org.apache.xerces.xni.grammars,org.apache.xerces.xni,org.apache.xerces.impl.xs'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.wml.dom'/>
    <p n='uses' v='org.apache.wml,org.apache.xerces.dom,org.w3c.dom'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.jaxp.validation'/>
    <p n='uses' v='org.apache.xerces.xni.grammars,org.apache.xerces.impl.xs.util,javax.xml.transform.dom,org.xml.sax,org.apache.xerces.util,org.w3c.dom.ls,org.xml.sax.ext,org.apache.xerces.impl.dv,org.apache.xerces.impl.msg,org.apache.xerces.xni,javax.xml.transform.sax,org.apache.xerces.impl.xs,org.apache.xerces.impl,org.apache.xerces.parsers,javax.xml.parsers,org.apache.xerces.xni.parser,org.w3c.dom,org.apache.xerces.xs,org.apache.xerces.impl.validation,javax.xml.transform,javax.xml.transform.stream,org.apache.xerces.dom,javax.xml.validation'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl.dtd.models'/>
    <p n='uses' v='org.apache.xerces.xni'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl.xpath'/>
    <p n='uses' v='org.apache.xerces.util,org.apache.xerces.xni'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.dom3.as'/>
    <p n='uses' v='org.w3c.dom.ls,org.w3c.dom'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl.dv.xs'/>
    <p n='uses' v='org.apache.xerces.impl.xs.util,org.apache.xerces.jaxp.datatype,org.apache.xerces.impl.dv.util,org.w3c.dom,javax.xml.datatype,javax.xml.namespace,org.apache.xerces.util,org.apache.xerces.xs,org.apache.xerces.impl.dv,org.apache.xerces.xs.datatypes,org.apache.xerces.impl.xpath.regex,org.apache.xerces.xni,org.apache.xerces.impl.xs'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.util'/>
    <p n='uses' v='org.apache.xerces.xni.grammars,javax.xml.parsers,org.apache.xerces.xni.parser,org.apache.xml.resolver.readers,org.w3c.dom,javax.xml.namespace,org.xml.sax,org.apache.xerces.impl.xs.opti,org.apache.xerces.jaxp,org.w3c.dom.ls,org.xml.sax.ext,org.apache.xml.resolver,org.apache.xerces.dom,org.apache.xerces.xni,org.apache.xerces.impl'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl.xs.identity'/>
    <p n='uses' v='org.apache.xerces.util,org.apache.xerces.xs,org.apache.xerces.impl.xs.util,org.apache.xerces.xni,org.apache.xerces.impl.xpath,org.apache.xerces.impl.xs'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl.xs.opti'/>
    <p n='uses' v='org.apache.xerces.xni.grammars,org.apache.xerces.parsers,org.apache.xerces.xni.parser,org.w3c.dom,org.apache.xerces.util,org.apache.xerces.impl.validation,org.apache.xerces.impl.dv,org.apache.xerces.impl.msg,org.apache.xerces.xni,org.apache.xerces.impl.xs,org.apache.xerces.impl'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.jaxp'/>
    <p n='uses' v='org.apache.xerces.xni.grammars,org.apache.xerces.parsers,org.apache.xerces.jaxp.validation,javax.xml.parsers,org.apache.xerces.xni.parser,org.w3c.dom,org.xml.sax,org.apache.xerces.xs,org.apache.xerces.util,org.apache.xerces.impl.xs.opti,org.apache.xerces.impl.validation,org.w3c.dom.ls,org.apache.xerces.dom,org.apache.xerces.xni,javax.xml.validation,org.apache.xerces.impl.xs,org.apache.xerces.impl,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl.dv'/>
    <p n='uses' v='org.apache.xerces.xs,org.apache.xerces.util,org.apache.xerces.impl.xs.util'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.xs.datatypes'/>
    <p n='uses' v='org.apache.xerces.xs,org.apache.xerces.xni,javax.xml.namespace,javax.xml.datatype'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl.msg'/>
    <p n='uses' v='org.apache.xerces.util'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.dom.events'/>
    <p n='uses' v='org.w3c.dom.events,org.w3c.dom.views,org.w3c.dom'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.xni'/>
    <p n='uses' v='org.apache.xerces.xni.parser'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl.xs'/>
    <p n='uses' v='org.apache.xerces.xni.grammars,org.apache.xerces.impl.xs.util,org.xml.sax,javax.xml.namespace,org.apache.xerces.impl.dv.xs,org.apache.xerces.util,org.apache.xerces.impl.xs.identity,org.apache.xerces.impl.xs.opti,org.w3c.dom.ls,org.apache.xerces.impl.dv,org.apache.xerces.xni,org.apache.xerces.impl,org.apache.xerces.parsers,org.apache.xerces.xni.parser,org.apache.xerces.impl.xs.traversers,org.w3c.dom,org.apache.xerces.xs,org.apache.xerces.impl.validation,org.apache.xerces.impl.xs.models,org.apache.xerces.dom'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl'/>
    <p n='uses' v='org.apache.xerces.impl.io,org.apache.xerces.xni.grammars,org.apache.xerces.xni.parser,org.xml.sax,org.apache.xerces.util,org.apache.xerces.impl.dtd,org.apache.xerces.impl.validation,org.apache.xerces.xni'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl.io'/>
    <p n='uses' v='org.apache.xerces.util,org.apache.xerces.impl.msg'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.html.dom'/>
    <p n='uses' v='org.apache.xerces.dom,org.w3c.dom,org.xml.sax,org.w3c.dom.html'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.xinclude'/>
    <p n='uses' v='org.apache.xerces.impl.io,org.apache.xerces.xpointer,org.apache.xerces.xni.parser,org.apache.xerces.util,org.apache.xerces.xni,org.apache.xerces.impl'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.jaxp.datatype'/>
    <p n='uses' v='org.apache.xerces.util,javax.xml.namespace,javax.xml.datatype'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.parsers'/>
    <p n='uses' v='org.apache.xerces.xpointer,org.apache.xerces.xni.grammars,org.apache.xerces.dom3.as,org.xml.sax,org.apache.xerces.util,org.w3c.dom.ls,org.xml.sax.ext,org.apache.xerces.impl.dv,org.apache.xerces.impl.msg,org.apache.xerces.xni,org.apache.xerces.impl.xs,org.apache.xerces.impl,org.apache.xerces.xinclude,org.apache.xerces.xni.parser,org.w3c.dom,org.apache.xerces.xs,org.apache.xerces.impl.dtd,org.apache.xerces.impl.validation,org.apache.xerces.dom,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl.dv.util'/>
    <p n='uses' v='org.apache.xerces.xs,org.apache.xerces.xs.datatypes'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.wml'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.xni.parser'/>
    <p n='uses' v='org.apache.xerces.xni'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl.xs.traversers'/>
    <p n='uses' v='org.apache.xerces.xni.grammars,org.apache.xerces.impl.xs.util,org.apache.xerces.parsers,org.apache.xerces.impl.xpath,org.apache.xerces.xni.parser,org.w3c.dom,org.apache.xerces.impl.dv.xs,org.xml.sax,org.apache.xerces.util,org.apache.xerces.xs,org.apache.xerces.impl.xs.identity,org.apache.xerces.impl.xs.opti,org.apache.xerces.impl.validation,org.apache.xerces.impl.dv,org.apache.xerces.xni,org.apache.xerces.impl.xs,org.apache.xerces.impl,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl.dv.dtd'/>
    <p n='uses' v='org.apache.xerces.util,org.apache.xerces.impl.dv'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.xs'/>
    <p n='uses' v='org.w3c.dom.ls,org.w3c.dom'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl.dtd'/>
    <p n='uses' v='org.apache.xerces.xni.grammars,org.apache.xerces.impl.dtd.models,org.apache.xerces.xni.parser,org.apache.xerces.util,org.apache.xerces.impl.validation,org.apache.xerces.impl.dv,org.apache.xerces.impl.msg,org.apache.xerces.xni,org.apache.xerces.impl'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl.validation'/>
    <p n='uses' v='org.apache.xerces.util,org.apache.xerces.impl.dv,org.apache.xerces.xni'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl.xs.models'/>
    <p n='uses' v='org.apache.xerces.util,org.apache.xerces.xs,org.apache.xerces.impl.dtd.models,org.apache.xerces.xni,org.apache.xerces.xni.parser,org.apache.xerces.impl.xs,org.apache.xerces.impl'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.impl.xpath.regex'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.serialize'/>
    <p n='uses' v='org.w3c.dom.traversal,org.w3c.dom,org.xml.sax,org.apache.xerces.util,org.w3c.dom.ls,sun.io,org.xml.sax.ext,org.apache.xerces.dom,org.apache.xerces.xni,org.apache.xerces.impl,org.xml.sax.helpers,org.w3c.dom.html'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xerces.dom'/>
    <p n='uses' v='org.apache.xerces.xni.grammars,org.apache.xerces.impl.xs.util,org.w3c.dom.traversal,org.apache.xerces.dom3.as,org.w3c.dom.ranges,org.apache.xerces.impl.dv.xs,org.apache.xerces.util,org.w3c.dom.ls,org.apache.xerces.impl.dv,org.apache.xerces.dom.events,org.apache.xerces.impl.msg,org.apache.xerces.xni,org.apache.xerces.impl.xs,org.apache.xerces.impl,org.w3c.dom.events,org.apache.xerces.parsers,org.apache.xerces.xni.parser,org.w3c.dom,org.apache.xerces.xs,org.apache.xerces.impl.dtd,org.apache.xerces.impl.validation,org.apache.xml.serialize'/>
    <p n='version' t='version' v='2.9.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.html.dom)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.html.dom ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.wml)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.wml ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.wml.dom)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.wml.dom ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.dom)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.dom ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.dom.events)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.dom.events ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.dom3.as)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.dom3.as ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.dtd)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl.dtd ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.dtd.models)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl.dtd.models ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.dv)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl.dv ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.dv.dtd)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl.dv.dtd ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.dv.util)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl.dv.util ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.dv.xs)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl.dv.xs ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.io)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl.io ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.msg)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl.msg ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.validation)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl.validation ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.xpath)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl.xpath ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.xpath.regex)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl.xpath.regex ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.xs)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl.xs ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.xs.identity)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl.xs.identity ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.xs.models)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl.xs.models ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.xs.opti)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl.xs.opti ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.xs.traversers)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl.xs.traversers ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.xs.util)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.impl.xs.util ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.jaxp)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.jaxp ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.jaxp.datatype)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.jaxp.datatype ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.jaxp.validation)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.jaxp.validation ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.parsers)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.parsers ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.util)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.util ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xinclude)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.xinclude ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xni)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.xni ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xni.grammars)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.xni.grammars ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xni.parser)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.xni.parser ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xpointer)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.xpointer ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xs)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.xs ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xs.datatypes)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.xs.datatypes ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.readers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.readers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.serialize)(version&gt;=2.9.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.serialize ;version=2.9.1
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.events)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.events
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.html)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.html
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ranges)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ranges
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.views)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.views
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=sun.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.io
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jdt-core/3.2.3.1' presentationname='Apache ServiceMix Bundles: core-3.2.3.v_686_R32x' symbolicname='org.apache.servicemix.bundles.jdt-core' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jdt-core/3.2.3_1/org.apache.servicemix.bundles.jdt-core-3.2.3_1.jar' version='3.2.3.1'>
  <description>
    This bundle simply wraps core-3.2.3.v_686_R32x.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    4008621
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: core-3.2.3.v_686_R32x'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jdt-core'/>
    <p n='version' t='version' v='3.2.3.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.core.search.indexing'/>
    <p n='uses' v='org.eclipse.jdt.core,org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.core.search,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.core.search.matching,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.compiler.ast,org.eclipse.core.runtime,org.eclipse.jdt.internal.core.index,org.eclipse.jdt.internal.core.jdom,org.eclipse.jdt.internal.core.search.processing,org.eclipse.jdt.core.search,org.eclipse.jdt.internal.compiler.classfmt,org.eclipse.core.resources,org.eclipse.jdt.internal.compiler.parser,org.eclipse.core.filesystem,org.eclipse.jdt.internal.core,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.lookup,org.eclipse.jdt.internal.core.util'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.core'/>
    <p n='uses' v='org.eclipse.jdt.core.formatter,org.eclipse.jdt.core.dom,org.eclipse.jdt.core.eval,org.eclipse.jdt.internal.codeassist,org.osgi.framework,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.internal.core.builder,org.eclipse.jdt.internal.formatter,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.codeassist.impl,org.eclipse.core.runtime,org.eclipse.core.runtime.jobs,org.eclipse.jdt.core.util,org.eclipse.jdt.core.search,org.eclipse.core.resources,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.internal.formatter.old,org.eclipse.jdt.internal.core,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.lookup,org.eclipse.jdt.internal.core.util'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.compiler.env'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.core.compiler'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.core.search'/>
    <p n='uses' v='org.eclipse.jdt.internal.core.search.indexing,org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.core,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.core.search.matching,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.internal.compiler.ast,org.eclipse.jdt.internal.compiler.util,org.eclipse.core.runtime,org.eclipse.jdt.internal.core.index,org.eclipse.jdt.internal.core.search.processing,org.eclipse.jdt.core.search,org.eclipse.core.resources,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.internal.core,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.internal.compiler.lookup,org.eclipse.jdt.internal.core.util,org.eclipse.jdt.internal.core.hierarchy'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.core.formatter'/>
    <p n='uses' v='org.eclipse.jdt.core,org.eclipse.text.edits,org.eclipse.jface.text,org.eclipse.osgi.util,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.formatter,org.eclipse.core.runtime,org.eclipse.jdt.internal.core.util'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.formatter.comment'/>
    <p n='uses' v='org.eclipse.jdt.core,org.eclipse.jdt.core.formatter,org.eclipse.text.edits,org.eclipse.jface.text,org.eclipse.jdt.internal.formatter,org.eclipse.core.runtime,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.internal.core.util'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.formatter.align'/>
    <p n='uses' v='org.eclipse.jdt.internal.formatter'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.core.eval'/>
    <p n='uses' v='org.eclipse.jdt.core,org.eclipse.core.resources,org.eclipse.core.runtime,org.eclipse.jdt.internal.eval'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.core.dom'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.core,org.eclipse.text.edits,org.eclipse.jface.text,org.eclipse.jdt.internal.compiler,org.eclipse.core.resources,org.eclipse.jdt.core.dom.rewrite,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.internal.core.dom.rewrite,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.internal.core,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.compiler.ast,org.eclipse.jdt.internal.compiler.lookup,org.eclipse.core.runtime,org.eclipse.jdt.internal.core.util'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.codeassist'/>
    <p n='uses' v='org.eclipse.jdt.core,org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.internal.codeassist.select,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.internal.core,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.compiler.ast,org.eclipse.jdt.internal.codeassist.impl,org.eclipse.core.runtime,org.eclipse.jdt.internal.compiler.lookup,org.eclipse.jdt.internal.core.util,org.eclipse.jdt.internal.codeassist.complete'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.core.jdom'/>
    <p n='uses' v='org.eclipse.jdt.core,org.eclipse.jdt.internal.core.jdom,org.eclipse.jdt.internal.core.util'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.compiler'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.compiler.codegen,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.internal.compiler.ast,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.compiler.lookup,org.eclipse.jdt.internal.core.util'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.compiler.codegen'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.classfmt,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.compiler.ast,org.eclipse.jdt.internal.compiler.lookup'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.core.search.matching'/>
    <p n='uses' v='org.eclipse.jdt.core,org.eclipse.jdt.internal.core.search.indexing,org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.core.search,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.internal.core.builder,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.compiler.ast,org.eclipse.core.runtime,org.eclipse.jdt.internal.core.index,org.eclipse.jdt.internal.core.search.processing,org.eclipse.jdt.core.search,org.eclipse.jdt.internal.compiler.classfmt,org.eclipse.core.resources,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.internal.core,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.internal.compiler.lookup,org.eclipse.jdt.internal.core.util,org.eclipse.jdt.internal.core.hierarchy'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.compiler.flow'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.internal.compiler.ast,org.eclipse.jdt.internal.compiler.codegen,org.eclipse.jdt.internal.compiler.lookup'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.compiler.batch'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.compiler.classfmt,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.compiler.ast,org.eclipse.jdt.internal.compiler.lookup'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.compiler.problem'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.compiler.ast,org.eclipse.jdt.internal.compiler.lookup'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.core.builder'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.core,org.eclipse.jdt.internal.compiler.classfmt,org.eclipse.jdt.internal.compiler,org.eclipse.core.resources,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.internal.core,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.compiler.lookup,org.eclipse.core.runtime,org.eclipse.jdt.internal.core.util'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.compiler.ast'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.codegen,org.eclipse.jdt.internal.compiler.flow,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.compiler.lookup'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.compiler.util'/>
    <p n='uses' v='org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.lookup'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.formatter'/>
    <p n='uses' v='org.eclipse.jdt.core,org.eclipse.jdt.core.formatter,org.eclipse.jdt.internal.formatter.comment,org.eclipse.jdt.core.dom,org.eclipse.jdt.internal.formatter.align,org.eclipse.text.edits,org.eclipse.jface.text,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.internal.compiler.ast,org.eclipse.core.runtime,org.eclipse.jdt.internal.compiler.lookup,org.eclipse.jdt.internal.core.util'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.codeassist.impl'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.internal.core,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.ast,org.eclipse.jdt.internal.compiler.lookup,org.eclipse.jdt.internal.compiler.parser'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.codeassist.complete'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.codeassist,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.flow,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.internal.compiler.ast,org.eclipse.jdt.internal.codeassist.impl,org.eclipse.jdt.internal.compiler.lookup'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.core.index'/>
    <p n='uses' v='org.eclipse.jdt.internal.core.search.indexing,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.core.util'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.core.jdom'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.core,org.eclipse.jdt.core.jdom,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.internal.compiler.ast,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.core.util'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.core.util'/>
    <p n='uses' v='org.eclipse.jdt.core,org.eclipse.jdt.internal.core,org.eclipse.core.runtime'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.compiler.parser.diagnose'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.ast,org.eclipse.jdt.internal.compiler.parser'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.core.search.processing'/>
    <p n='uses' v='org.eclipse.core.runtime.jobs,org.eclipse.core.runtime,org.eclipse.jdt.internal.core.util'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.core.search'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.core.search.indexing,org.eclipse.jdt.core,org.eclipse.jdt.internal.core.search,org.eclipse.jdt.internal.core,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.core.search.matching,org.eclipse.core.resources,org.eclipse.core.runtime,org.eclipse.jdt.internal.compiler.parser'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.compiler.classfmt'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.compiler.codegen,org.eclipse.jdt.internal.compiler.ast'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.formatter.old'/>
    <p n='uses' v='org.eclipse.jdt.core,org.eclipse.jdt.core.formatter,org.eclipse.text.edits,org.eclipse.jdt.internal.formatter,org.eclipse.jdt.internal.core.util,org.eclipse.jdt.internal.compiler.parser'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.eval'/>
    <p n='uses' v='org.eclipse.jdt.core,org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.codeassist,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.classfmt,org.eclipse.jdt.internal.compiler.codegen,org.eclipse.jdt.internal.compiler.flow,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.internal.core,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.compiler.ast,org.eclipse.core.runtime,org.eclipse.jdt.internal.compiler.lookup,org.eclipse.jdt.internal.core.util'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.core.dom.rewrite'/>
    <p n='uses' v='org.eclipse.jdt.core,org.eclipse.jdt.internal.core.dom.rewrite,org.eclipse.jdt.core.dom,org.eclipse.text.edits,org.eclipse.jface.text,org.eclipse.core.runtime,org.eclipse.jdt.internal.core.util'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.compiler.parser'/>
    <p n='uses' v='org.eclipse.jdt.core,org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.compiler.parser.diagnose,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.internal.core,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.internal.compiler.ast,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.compiler.lookup'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.codeassist.select'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.codeassist,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.internal.compiler.ast,org.eclipse.jdt.internal.codeassist.impl,org.eclipse.jdt.internal.compiler.lookup'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.core.dom.rewrite'/>
    <p n='uses' v='org.eclipse.jdt.core,org.eclipse.jdt.core.formatter,org.eclipse.text.edits,org.eclipse.jdt.core.dom,org.eclipse.jdt.core.search,org.eclipse.jface.text,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.core.dom.rewrite,org.eclipse.jdt.core.compiler,org.eclipse.core.runtime'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.core'/>
    <p n='uses' v='org.eclipse.jdt.internal.core.search.indexing,org.eclipse.jdt.core,org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.core.search,org.eclipse.jdt.core.formatter,org.eclipse.jdt.core.eval,org.eclipse.core.runtime.preferences,org.eclipse.text.edits,org.eclipse.jdt.core.dom,org.eclipse.jface.text,org.eclipse.jdt.internal.codeassist,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.problem,javax.xml.parsers,org.eclipse.jdt.internal.core.builder,org.eclipse.jdt.internal.formatter,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.compiler.ast,org.osgi.service.prefs,org.eclipse.jdt.internal.codeassist.impl,org.eclipse.core.runtime.jobs,org.eclipse.core.runtime,org.xml.sax,org.eclipse.jdt.core.util,org.eclipse.jdt.internal.core.search.processing,org.eclipse.jdt.core.search,org.eclipse.core.runtime.content,org.w3c.dom,org.eclipse.jdt.internal.compiler.classfmt,org.eclipse.core.resources,org.eclipse.jdt.internal.eval,org.eclipse.jdt.core.dom.rewrite,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.core.eval,org.eclipse.jdt.internal.compiler.lookup,org.eclipse.jdt.internal.core.util,org.eclipse.jdt.internal.core.hierarchy'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.core.compiler'/>
    <p n='uses' v='org.eclipse.jdt.core,org.eclipse.jdt.core.dom,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.internal.core,org.eclipse.jdt.internal.core.builder,org.eclipse.core.resources,org.eclipse.core.runtime,org.eclipse.jdt.internal.compiler.parser'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.compiler.impl'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.compiler.ast,org.eclipse.jdt.internal.compiler.lookup'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.core.eval'/>
    <p n='uses' v='org.eclipse.jdt.core,org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.core.eval,org.eclipse.jdt.internal.codeassist,org.eclipse.jdt.internal.compiler,org.eclipse.core.resources,org.eclipse.jdt.internal.eval,org.eclipse.jdt.internal.core.builder,org.eclipse.jdt.internal.core,org.eclipse.jdt.core.compiler,org.eclipse.core.runtime'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.compiler.lookup'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.codegen,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.compiler.ast,org.eclipse.jdt.internal.compiler.flow'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.core.util'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.core,org.eclipse.text.edits,org.eclipse.core.runtime.preferences,org.eclipse.jdt.core.dom,org.eclipse.jface.text,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.codegen,org.eclipse.jdt.internal.compiler.batch,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.internal.compiler.ast,org.eclipse.jdt.internal.compiler.util,org.eclipse.core.runtime,org.eclipse.jdt.core.util,org.eclipse.jdt.core.search,org.eclipse.core.runtime.content,org.eclipse.jdt.internal.compiler.classfmt,org.eclipse.core.resources,org.eclipse.osgi.util,org.eclipse.jdt.internal.compiler.parser,org.eclipse.core.filesystem,org.eclipse.jdt.internal.core,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.lookup'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.eclipse.jdt.internal.core.hierarchy'/>
    <p n='uses' v='org.eclipse.jdt.internal.core.search.indexing,org.eclipse.jdt.core,org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.core.search,org.eclipse.jdt.internal.core.search.processing,org.eclipse.jdt.core.search,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.classfmt,org.eclipse.jdt.internal.core.search.matching,org.eclipse.core.resources,org.eclipse.jdt.internal.compiler.parser,org.eclipse.jdt.internal.compiler.problem,org.eclipse.jdt.internal.core,org.eclipse.jdt.internal.compiler.impl,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler.util,org.eclipse.jdt.internal.compiler.ast,org.eclipse.core.runtime,org.eclipse.jdt.internal.compiler.lookup,org.eclipse.jdt.internal.core.util'/>
    <p n='version' t='version' v='3.2.3.v_686_R32x'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.core.filesystem)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.core.filesystem
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.core.resources)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.core.resources
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.core.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.core.runtime
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.core.runtime.content)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.core.runtime.content
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.core.runtime.jobs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.core.runtime.jobs
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.core.runtime.preferences)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.core.runtime.preferences
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.core)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.core ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.core.compiler)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.core.compiler ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.core.dom)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.core.dom ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.core.dom.rewrite)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.core.dom.rewrite ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.core.eval)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.core.eval ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.core.formatter)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.core.formatter ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.core.jdom)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.core.jdom ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.core.search)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.core.search ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.core.util)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.core.util ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.codeassist)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.codeassist ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.codeassist.complete)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.codeassist.complete
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.codeassist.impl)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.codeassist.impl ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.codeassist.select)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.codeassist.select ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.compiler ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.ast)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.compiler.ast ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.batch)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.compiler.batch ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.classfmt)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.compiler.classfmt ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.codegen)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.compiler.codegen ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.env)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.compiler.env ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.flow)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.compiler.flow ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.impl)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.compiler.impl ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.lookup)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.compiler.lookup ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.parser)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.compiler.parser ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.parser.diagnose)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.compiler.parser.diagnose
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.problem)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.compiler.problem ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.util)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.compiler.util ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.core)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.core ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.core.builder)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.core.builder ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.core.dom.rewrite)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.core.dom.rewrite ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.core.eval)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.core.eval ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.core.hierarchy)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.core.hierarchy ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.core.index)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.core.index ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.core.jdom)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.core.jdom ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.core.search)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.core.search ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.core.search.indexing)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.core.search.indexing
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.core.search.matching)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.core.search.matching
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.core.search.processing)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.core.search.processing
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.core.util)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.core.util ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.eval)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.eval ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.formatter)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.formatter ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.formatter.align)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.formatter.align ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.formatter.comment)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.formatter.comment ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.formatter.old)(version&gt;=3.2.3.v_686_R32x))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.formatter.old ;version=3.2.3.v_686_R32x
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jface.text)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.jface.text
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.osgi.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.osgi.util
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.text.edits)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.text.edits
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.osworkflow/2.7.0.1' presentationname='Apache ServiceMix Bundles: osworkflow-2.7.0' symbolicname='org.apache.servicemix.bundles.osworkflow' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.osworkflow/2.7.0_1/org.apache.servicemix.bundles.osworkflow-2.7.0_1.jar' version='2.7.0.1'>
  <description>
    This bundle simply wraps osworkflow-2.7.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    314456
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: osworkflow-2.7.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.osworkflow'/>
    <p n='version' t='version' v='2.7.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.soap'/>
    <p n='uses' v='electric.util,javax.servlet.http,com.opensymphony.workflow,com.opensymphony.workflow.loader,com.opensymphony.workflow.config,com.opensymphony.workflow.query,com.opensymphony.module.propertyset,com.opensymphony.workflow.basic,com.opensymphony.workflow.ofbiz,electric.registry'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.loader'/>
    <p n='uses' v='org.xml.sax,com.opensymphony.workflow.util,org.w3c.dom,org.apache.commons.logging,javax.sql,javax.naming,com.opensymphony.workflow,javax.xml.parsers,com.opensymphony.module.propertyset,org.apache.velocity.app,org.apache.velocity,org.apache.velocity.context'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.config'/>
    <p n='uses' v='com.opensymphony.workflow,com.opensymphony.workflow.loader,javax.xml.parsers,org.w3c.dom,com.opensymphony.workflow.spi,com.opensymphony.util'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.util'/>
    <p n='uses' v='com.opensymphony.xwork,com.opensymphony.workflow.timer,javax.naming,com.opensymphony.module.propertyset,javax.mail.internet,com.opensymphony.provider,com.opensymphony.provider.bean,com.opensymphony.util,com.opensymphony.user,webwork.dispatcher,org.quartz.impl,org.apache.commons.logging,com.opensymphony.workflow.spi,com.opensymphony.workflow,webwork.action,javax.mail,javax.rmi,org.quartz,javax.jms'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.ejb'/>
    <p n='uses' v='com.opensymphony.workflow.config,com.opensymphony.workflow.loader,com.opensymphony.workflow.query,org.apache.commons.logging,javax.ejb,javax.naming,com.opensymphony.workflow,com.opensymphony.module.propertyset,javax.rmi,com.opensymphony.util'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.spi.memory'/>
    <p n='uses' v='com.opensymphony.workflow,com.opensymphony.workflow.query,com.opensymphony.module.propertyset,org.apache.commons.logging,com.opensymphony.workflow.spi,com.opensymphony.util'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.query'/>
    <p n='uses' v='org.apache.commons.logging'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.spi'/>
    <p n='uses' v='com.opensymphony.workflow,com.opensymphony.module.propertyset,com.opensymphony.workflow.query'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.basic'/>
    <p n='uses' v='com.opensymphony.workflow'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.spi.jdbc'/>
    <p n='uses' v='javax.naming,com.opensymphony.workflow,com.opensymphony.workflow.query,com.opensymphony.module.propertyset,org.apache.commons.logging,com.opensymphony.workflow.spi,javax.sql'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.timer'/>
    <p n='uses' v='electric.util,com.opensymphony.workflow,org.quartz.impl,org.apache.commons.logging,com.opensymphony.workflow.basic,org.quartz,electric.registry'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.util.ejb.local'/>
    <p n='uses' v='javax.ejb,javax.naming,com.opensymphony.workflow,com.opensymphony.module.propertyset,org.apache.commons.logging,com.opensymphony.workflow.spi,javax.rmi'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow'/>
    <p n='uses' v='com.opensymphony.workflow.loader,com.opensymphony.workflow.config,com.opensymphony.workflow.util,com.opensymphony.workflow.query,org.apache.commons.logging,com.opensymphony.workflow.spi,com.opensymphony.workflow.util.ejb.local,com.opensymphony.module.propertyset,com.opensymphony.workflow.util.bsf,com.opensymphony.workflow.util.jndi,com.opensymphony.workflow.util.beanshell,com.opensymphony.workflow.util.ejb.remote,com.opensymphony.util'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.spi.hibernate'/>
    <p n='uses' v='com.opensymphony.workflow.query,org.springframework.orm.hibernate.support,org.apache.commons.logging,com.opensymphony.workflow.spi,com.opensymphony.module.propertyset.hibernate,net.sf.hibernate.expression,net.sf.hibernate.type,net.sf.hibernate,com.opensymphony.workflow,com.opensymphony.module.propertyset,org.springframework.orm.hibernate,com.opensymphony.util'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.util.bsf'/>
    <p n='uses' v='com.opensymphony.workflow,com.opensymphony.module.propertyset,org.apache.commons.logging,com.opensymphony.workflow.spi,com.ibm.bsf,com.opensymphony.util'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.spi.prevayler'/>
    <p n='uses' v='com.opensymphony.workflow,com.opensymphony.module.propertyset,com.opensymphony.workflow.query,org.prevayler,com.opensymphony.workflow.spi,com.opensymphony.util'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.spi.ofbiz'/>
    <p n='uses' v='com.opensymphony.workflow,org.ofbiz.core.util,com.opensymphony.module.propertyset,com.opensymphony.workflow.query,org.ofbiz.core.entity,org.apache.commons.logging,com.opensymphony.workflow.spi'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.util.jndi'/>
    <p n='uses' v='javax.naming,com.opensymphony.workflow,com.opensymphony.module.propertyset,org.apache.commons.logging,com.opensymphony.workflow.spi'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.spi.ojb'/>
    <p n='uses' v='org.apache.ojb.broker.query,com.opensymphony.workflow,com.opensymphony.workflow.query,com.opensymphony.module.propertyset,org.apache.ojb.broker,org.apache.commons.logging,com.opensymphony.workflow.spi'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.spi.ejb'/>
    <p n='uses' v='com.opensymphony.workflow.query,com.opensymphony.ejb,org.apache.commons.logging,com.opensymphony.workflow.spi,javax.ejb,javax.naming,com.opensymphony.workflow,com.opensymphony.module.propertyset,javax.rmi'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.util.ejb.remote'/>
    <p n='uses' v='javax.ejb,javax.naming,com.opensymphony.workflow,com.opensymphony.module.propertyset,org.apache.commons.logging,com.opensymphony.workflow.spi,javax.rmi'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.util.beanshell'/>
    <p n='uses' v='bsh,com.opensymphony.workflow,com.opensymphony.module.propertyset,org.apache.commons.logging,com.opensymphony.workflow.spi,com.opensymphony.util'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.workflow.ofbiz'/>
    <p n='uses' v='com.opensymphony.workflow,org.ofbiz.core.entity,org.apache.commons.logging,com.opensymphony.workflow.basic'/>
    <p n='version' t='version' v='2.7.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=bsh)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package bsh
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.bsf)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.bsf
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.ejb
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.propertyset)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.propertyset
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.propertyset.hibernate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.propertyset.hibernate
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.provider)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.provider
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.provider.bean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.provider.bean
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.user)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.opensymphony.user
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.util
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.basic)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.basic ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.config)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.config ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.ejb)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.ejb ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.loader)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.loader ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.ofbiz)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.ofbiz ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.query)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.query ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.soap)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.soap ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.spi)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.spi ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.spi.ejb)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.spi.ejb ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.spi.hibernate)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.spi.hibernate ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.spi.jdbc)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.spi.jdbc ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.spi.memory)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.spi.memory ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.spi.ofbiz)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.spi.ofbiz ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.spi.ojb)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.spi.ojb ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.spi.prevayler)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.spi.prevayler ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.timer)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.timer ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.util)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.util ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.util.beanshell)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.util.beanshell ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.util.bsf)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.util.bsf ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.util.ejb.local)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.util.ejb.local ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.util.ejb.remote)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.util.ejb.remote ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.workflow.util.jndi)(version&gt;=2.7.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.workflow.util.jndi ;version=2.7.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.xwork)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.opensymphony.xwork
  </require>
  <require extend='false' filter='(&amp;(package=electric.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package electric.registry
  </require>
  <require extend='false' filter='(&amp;(package=electric.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package electric.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.mail.internet
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.hibernate)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.hibernate
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.hibernate.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.hibernate.expression
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.hibernate.type)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.hibernate.type
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ojb.broker)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ojb.broker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ojb.broker.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ojb.broker.query
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.ofbiz.core.entity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.ofbiz.core.entity
  </require>
  <require extend='false' filter='(&amp;(package=org.ofbiz.core.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.ofbiz.core.util
  </require>
  <require extend='false' filter='(&amp;(package=org.prevayler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.prevayler
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.quartz
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.quartz.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.orm.hibernate)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.orm.hibernate
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.orm.hibernate.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.orm.hibernate.support
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=webwork.action)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package webwork.action
  </require>
  <require extend='false' filter='(&amp;(package=webwork.dispatcher)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package webwork.dispatcher
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.abdera/0.4.0.incubating_1' presentationname='Apache ServiceMix Bundles: abdera-0.4.0-incubating' symbolicname='org.apache.servicemix.bundles.abdera' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.abdera/0.4.0-incubating_1/org.apache.servicemix.bundles.abdera-0.4.0-incubating_1.jar' version='0.4.0.incubating_1'>
  <description>
    This bundle simply wraps abdera-0.4.0-incubating.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    759159
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: abdera-0.4.0-incubating'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.abdera'/>
    <p n='version' t='version' v='0.4.0.incubating_1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.model'/>
    <p n='uses' v='org.apache.abdera.util,javax.activation,javax.xml.namespace,org.apache.abdera.i18n.iri,org.apache.abdera.writer,org.apache.abdera.factory,org.apache.abdera.i18n.rfc4646'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.util.filter'/>
    <p n='uses' v='javax.xml.namespace,org.apache.abdera.filter'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera'/>
    <p n='uses' v='org.apache.abdera.parser,org.apache.abdera.model,org.apache.abdera.util,org.apache.abdera.i18n.iri,org.apache.abdera.writer,org.apache.abdera.xpath,org.apache.abdera.factory'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.util'/>
    <p n='uses' v='org.apache.abdera.model,javax.xml.namespace,org.apache.abdera.i18n.iri,javax.xml.transform,org.apache.abdera.parser,org.apache.abdera.filter,org.apache.commons.codec.binary,javax.xml.transform.stream,org.apache.abdera.i18n.rfc4646,org.apache.abdera,javax.activation,org.apache.abdera.writer,org.apache.abdera.i18n.text.io,org.apache.abdera.i18n.text,org.apache.abdera.xpath,org.apache.abdera.factory'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.protocol.util'/>
    <p n='uses' v='org.apache.abdera.util,org.apache.abdera.protocol,javax.activation,org.apache.commons.codec,org.apache.abdera.i18n.text,org.apache.abdera.i18n.iri,org.apache.commons.codec.net'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.i18n.iri'/>
    <p n='uses' v='org.apache.abdera.i18n.text.data,org.apache.abdera.i18n.text'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.writer'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.abdera.util,javax.xml.namespace,javax.activation,org.apache.abdera.i18n.iri,org.apache.abdera.i18n.rfc4646'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.i18n.lang'/>
    <p n='uses' v='org.apache.abdera.i18n.text'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.i18n.text.data'/>
    <p n='uses' v='org.apache.abdera.i18n.text'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.parser'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.abdera.util,org.apache.abdera.filter,org.apache.abdera.factory'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.i18n.unicode.data'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.protocol'/>
    <p n='uses' v='org.apache.abdera.util,org.apache.abdera.protocol.util,javax.activation,org.apache.abdera.i18n.iri,org.apache.abdera.writer'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.protocol.error'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.abdera.util,org.apache.abdera,javax.xml.namespace,org.apache.abdera.writer,org.apache.abdera.factory'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.i18n.templates'/>
    <p n='uses' v='org.apache.abdera.i18n.text'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.i18n.text'/>
    <p n='uses' v='org.apache.abdera.i18n.text.data,org.apache.abdera.i18n.rfc4646'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.i18n.text.io'/>
    <p n='uses' v='javax.activation,org.apache.abdera.i18n.text'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.filter'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.xpath'/>
    <p n='uses' v='org.apache.abdera.model'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.i18n.rfc4646.enums'/>
    <p n='uses' v='org.apache.abdera.i18n.rfc4646'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.factory'/>
    <p n='uses' v='org.apache.abdera.model,org.apache.abdera,org.apache.abdera.util,javax.xml.namespace,javax.activation,org.apache.abdera.i18n.iri,org.apache.abdera.writer,org.apache.abdera.parser,org.apache.abdera.i18n.rfc4646'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.i18n.iri.data'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.abdera.i18n.rfc4646'/>
    <p n='uses' v='org.apache.abdera.i18n.rfc4646.enums'/>
    <p n='version' t='version' v='0.4.0.incubating'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.factory)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.factory ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.filter)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.filter ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.i18n.iri)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.i18n.iri ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.i18n.iri.data)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.i18n.iri.data ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.i18n.lang)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.i18n.lang ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.i18n.rfc4646)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.i18n.rfc4646 ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.i18n.rfc4646.enums)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.i18n.rfc4646.enums ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.i18n.templates)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.i18n.templates ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.i18n.text)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.i18n.text ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.i18n.text.data)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.i18n.text.data ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.i18n.text.io)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.i18n.text.io ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.i18n.unicode.data)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.i18n.unicode.data ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.model)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.model ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.parser)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.parser ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.protocol)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.protocol ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.protocol.error)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.protocol.error ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.protocol.util)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.protocol.util ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.util)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.util ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.util.filter)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.util.filter ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.writer)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.writer ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.abdera.xpath)(version&gt;=0.4.0.incubating))' multiple='false' name='package' optional='false'>
    Import package org.apache.abdera.xpath ;version=0.4.0.incubating
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.binary)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.codec.binary
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.codec.net
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.neethi/2.0.4.1' presentationname='Apache ServiceMix Bundles: neethi-2.0.4' symbolicname='org.apache.servicemix.bundles.neethi' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.neethi/2.0.4_1/org.apache.servicemix.bundles.neethi-2.0.4_1.jar' version='2.0.4.1'>
  <description>
    This bundle simply wraps neethi-2.0.4.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    33096
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: neethi-2.0.4'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.neethi'/>
    <p n='version' t='version' v='2.0.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.neethi'/>
    <p n='uses' v='org.apache.neethi.builders.xml,javax.xml.namespace,org.apache.neethi.util,org.apache.axiom.om.impl.llom.factory,org.apache.neethi.builders,org.apache.axiom.om,javax.xml.stream,org.apache.axiom.om.impl.builder'/>
    <p n='version' t='version' v='2.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.neethi.builders'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.axiom.om'/>
    <p n='version' t='version' v='2.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.neethi.builders.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.neethi.builders,javax.xml.namespace,org.apache.axiom.om,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.neethi.util'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.4'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axiom.om)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axiom.om
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axiom.om.impl.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axiom.om.impl.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axiom.om.impl.llom.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axiom.om.impl.llom.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=2.0.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi ;version=2.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi.builders)(version&gt;=2.0.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi.builders ;version=2.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi.builders.xml)(version&gt;=2.0.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi.builders.xml ;version=2.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi.util)(version&gt;=2.0.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi.util ;version=2.0.4
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.mina/1.1.6.1' presentationname='Apache ServiceMix Bundles: mina-1.1.6' symbolicname='org.apache.servicemix.bundles.mina' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.mina/1.1.6_1/org.apache.servicemix.bundles.mina-1.1.6_1.jar' version='1.1.6.1'>
  <description>
    This bundle simply wraps mina-1.1.6.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    365790
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: mina-1.1.6'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.mina'/>
    <p n='version' t='version' v='1.1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.vmpipe'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.transport.vmpipe.support'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.vmpipe.support'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.apache.mina.common.support,org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.demux'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.support'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.spring'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.springframework.beans.factory.config,org.apache.mina.common,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.support'/>
    <p n='uses' v='com.jcraft.jzlib,org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.filter,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.filter.codec.support,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler'/>
    <p n='uses' v='org.apache.mina.handler.support,org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.jmx'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.management,org.apache.mina.filter'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.executor'/>
    <p n='uses' v='org.apache.mina.common,org.slf4j'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.common'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.filter.executor,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.socket.nio.support'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.transport.socket.nio'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.socket.nio'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.transport.socket.nio.support,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.chain'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.multiton'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.netty'/>
    <p n='uses' v='org.apache.mina.common,net.gleamynode.netty2,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.common.support'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util,org.slf4j'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.management'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.textline'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.support'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.util'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.transport.socket.nio,org.slf4j'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter'/>
    <p n='uses' v='org.apache.mina.filter.executor,org.apache.mina.common,org.apache.mina.common.support,org.apache.mina.util,org.apache.mina.filter.support,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.serialization'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.spring.ssl'/>
    <p n='uses' v='org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.util,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.demux'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.jcraft.jzlib)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.jcraft.jzlib
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=net.gleamynode.netty2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.gleamynode.netty2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.demux)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.demux ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.netty)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.netty ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.serialization)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.serialization ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.textline)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.textline ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.executor)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.executor ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.chain)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.chain ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.demux)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.demux ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.multiton)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.multiton ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.jmx)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.jmx ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.spring)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.spring ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.spring.ssl)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.spring.ssl ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.management)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.management ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.socket.nio ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.socket.nio.support
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.vmpipe ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.vmpipe.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.util)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.util ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.mina/1.1.7.1' presentationname='Apache ServiceMix Bundles: mina-1.1.7' symbolicname='org.apache.servicemix.bundles.mina' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.mina/1.1.7_1/org.apache.servicemix.bundles.mina-1.1.7_1.jar' version='1.1.7.1'>
  <description>
    This bundle simply wraps mina-1.1.7.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    365490
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: mina-1.1.7'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.mina'/>
    <p n='version' t='version' v='1.1.7.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.vmpipe'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.transport.vmpipe.support'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.vmpipe.support'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.apache.mina.common.support,org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.demux'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.support'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.spring'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.springframework.beans.factory.config,org.apache.mina.common,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.support'/>
    <p n='uses' v='com.jcraft.jzlib,org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.filter,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.filter.codec.support,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler'/>
    <p n='uses' v='org.apache.mina.handler.support,org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.jmx'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.management,org.apache.mina.filter'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.executor'/>
    <p n='uses' v='org.apache.mina.common,org.slf4j'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.common'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.filter.executor,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.socket.nio.support'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.transport.socket.nio'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.socket.nio'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.transport.socket.nio.support,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.chain'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.multiton'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.netty'/>
    <p n='uses' v='org.apache.mina.common,net.gleamynode.netty2,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.common.support'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util,org.slf4j'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.management'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.textline'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.support'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.util'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.transport.socket.nio,org.slf4j'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter'/>
    <p n='uses' v='org.apache.mina.filter.executor,org.apache.mina.common,org.apache.mina.common.support,org.apache.mina.util,org.apache.mina.filter.support,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.serialization'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.spring.ssl'/>
    <p n='uses' v='org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.util,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.demux'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.7'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.jcraft.jzlib)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.jcraft.jzlib
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=net.gleamynode.netty2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.gleamynode.netty2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common.support)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common.support ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.demux)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.demux ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.netty)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.netty ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.serialization)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.serialization ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.support)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.support ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.textline)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.textline ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.executor)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.executor ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.support)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.support ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.chain)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.chain ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.demux)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.demux ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.multiton)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.multiton ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.support)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.support ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.jmx)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.jmx ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.spring)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.spring ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.spring.ssl)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.spring.ssl ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.management)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.management ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.socket.nio ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio.support)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.socket.nio.support
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.vmpipe ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe.support)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.vmpipe.support ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.util)(version&gt;=1.1.7))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.util ;version=1.1.7
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.openjpa/1.2.0.1' presentationname='Apache ServiceMix Bundles: openjpa-persistence-1.2.0' symbolicname='org.apache.servicemix.bundles.openjpa' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.openjpa/1.2.0_1/org.apache.servicemix.bundles.openjpa-1.2.0_1.jar' version='1.2.0.1'>
  <description>
    This bundle simply wraps openjpa-persistence-1.2.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1764283
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: openjpa-persistence-1.2.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.openjpa'/>
    <p n='version' t='version' v='1.2.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.lib.util'/>
    <p n='uses' v='serp.util,org.apache.commons.lang.exception,org.apache.commons.collections.set,org.apache.commons.lang,org.apache.commons.collections.map,serp.bytecode.lowlevel,serp.bytecode'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.kernel'/>
    <p n='uses' v='org.apache.commons.collections.iterators,org.apache.commons.collections.set,org.apache.openjpa.enhance,org.apache.commons.collections,org.apache.openjpa.kernel.exps,org.apache.commons.collections.map,org.apache.openjpa.conf,javax.transaction,org.apache.openjpa.lib.util,org.apache.openjpa.datacache,serp.util,org.apache.openjpa.ee,org.apache.openjpa.meta,org.apache.openjpa.event,javax.transaction.xa,org.apache.commons.lang,org.apache.openjpa.lib.rop,org.apache.openjpa.lib.log,org.apache.openjpa.util,org.apache.openjpa.lib.conf,org.apache.openjpa.lib.util.concurrent'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.ant'/>
    <p n='uses' v='org.apache.openjpa.lib.util,org.apache.tools.ant.types,org.apache.openjpa.conf,org.apache.tools.ant,org.apache.openjpa.meta,org.apache.openjpa.lib.ant,org.apache.openjpa.enhance,org.apache.openjpa.lib.conf'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.datacache'/>
    <p n='uses' v='org.apache.openjpa.lib.util,org.apache.openjpa.kernel,serp.util,org.apache.openjpa.event,org.apache.openjpa.meta,org.apache.commons.lang,org.apache.openjpa.enhance,org.apache.openjpa.kernel.exps,org.apache.commons.collections.map,org.apache.openjpa.lib.rop,org.apache.openjpa.lib.log,org.apache.openjpa.conf,serp.bytecode,org.apache.openjpa.util,org.apache.openjpa.lib.conf,org.apache.openjpa.lib.util.concurrent'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.ee'/>
    <p n='uses' v='org.apache.openjpa.lib.util,com.ibm.wsspi.uow,javax.transaction.xa,com.ibm.websphere.jtaextensions,org.apache.openjpa.lib.log,javax.naming,org.apache.openjpa.conf,serp.bytecode,org.apache.openjpa.util,javax.transaction,org.apache.openjpa.lib.conf'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.lib.meta'/>
    <p n='uses' v='org.apache.openjpa.lib.util,org.xml.sax,serp.util,org.apache.commons.lang.exception,org.apache.commons.lang,javax.xml.transform,javax.xml.transform.sax,serp.bytecode.lowlevel,org.apache.openjpa.lib.log,org.apache.openjpa.lib.xml,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.parsers,javax.xml.transform.stream'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.event'/>
    <p n='uses' v='org.apache.openjpa.lib.util,org.apache.openjpa.kernel,serp.util,org.apache.commons.pool.impl,org.apache.openjpa.meta,javax.naming,org.apache.openjpa.lib.log,org.apache.openjpa.conf,org.apache.commons.pool,org.apache.openjpa.util,javax.jms,org.apache.openjpa.lib.conf,org.apache.openjpa.lib.util.concurrent'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.meta'/>
    <p n='uses' v='org.apache.openjpa.lib.meta,org.apache.commons.collections.bidimap,org.apache.openjpa.enhance,org.apache.openjpa.conf,org.apache.openjpa.lib.xml,serp.bytecode,org.apache.openjpa.lib.util,org.apache.openjpa.kernel,org.apache.openjpa.datacache,serp.util,org.apache.openjpa.event,org.apache.commons.lang,org.apache.openjpa.lib.log,org.apache.commons.collections.comparators,org.apache.openjpa.util,org.apache.openjpa.lib.conf'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.persistence'/>
    <p n='uses' v='org.apache.openjpa.lib.meta,org.apache.openjpa.enhance,javax.sql,org.apache.openjpa.kernel.exps,org.apache.commons.collections.map,javax.naming,org.apache.openjpa.conf,javax.persistence,javax.persistence.spi,org.apache.openjpa.lib.util,org.apache.openjpa.kernel,org.xml.sax,org.apache.openjpa.datacache,serp.util,org.apache.openjpa.ee,org.apache.openjpa.meta,org.apache.openjpa.event,org.apache.commons.lang,org.apache.openjpa.lib.rop,org.apache.openjpa.lib.log,javax.rmi,org.apache.openjpa.util,org.apache.openjpa.lib.conf'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.lib.ant'/>
    <p n='uses' v='org.apache.openjpa.lib.util,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.openjpa.lib.conf'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.enhance'/>
    <p n='uses' v='org.apache.openjpa.lib.util,org.apache.openjpa.kernel,serp.util,org.apache.openjpa.lib.meta,org.apache.openjpa.meta,org.apache.commons.lang,serp.bytecode.lowlevel,org.apache.openjpa.lib.log,org.apache.openjpa.conf,serp.bytecode,org.apache.openjpa.util,org.apache.openjpa.lib.conf,org.apache.openjpa.lib.util.concurrent'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.kernel.exps'/>
    <p n='uses' v='org.apache.openjpa.lib.util,org.apache.openjpa.kernel,serp.util,org.apache.openjpa.meta,org.apache.openjpa.enhance,org.apache.commons.lang,org.apache.commons.collections.map,org.apache.openjpa.conf,org.apache.openjpa.util'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.lib.rop'/>
    <p n='uses' v='org.apache.openjpa.lib.util,serp.util,org.apache.commons.lang.exception,org.apache.commons.lang,org.apache.commons.collections'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.lib.log'/>
    <p n='uses' v='org.apache.openjpa.lib.util,org.apache.log4j,org.apache.commons.logging,org.apache.openjpa.lib.conf'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.lib.xml'/>
    <p n='uses' v='org.apache.openjpa.lib.util,org.xml.sax,javax.xml.parsers,serp.util,org.apache.commons.lang.exception,org.w3c.dom'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.conf'/>
    <p n='uses' v='org.apache.openjpa.lib.util,org.apache.openjpa.kernel,org.apache.openjpa.datacache,org.apache.openjpa.ee,org.apache.openjpa.event,org.apache.openjpa.meta,org.apache.commons.lang,org.apache.openjpa.kernel.exps,org.apache.openjpa.lib.log,org.apache.openjpa.abstractstore,org.apache.openjpa.util,org.apache.openjpa.lib.conf,org.apache.openjpa.lib.util.concurrent'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.lib.graph'/>
    <p n='uses' v='org.apache.openjpa.lib.util'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.lib.jdbc'/>
    <p n='uses' v='org.apache.openjpa.lib.util,serp.util,org.apache.commons.lang.exception,javax.sql,org.apache.openjpa.lib.log,org.apache.openjpa.lib.util.concurrent'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.kernel.jpql'/>
    <p n='uses' v='org.apache.openjpa.lib.util,org.apache.openjpa.kernel,serp.util,org.apache.openjpa.meta,org.apache.openjpa.kernel.exps,org.apache.commons.collections.map,org.apache.openjpa.lib.log,org.apache.openjpa.conf,org.apache.openjpa.util'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.util'/>
    <p n='uses' v='org.apache.openjpa.lib.util,org.apache.openjpa.kernel,serp.util,org.apache.commons.collections.iterators,org.apache.openjpa.meta,org.apache.commons.collections.set,org.apache.commons.lang,org.apache.openjpa.enhance,org.apache.commons.collections,org.apache.openjpa.lib.log,org.apache.openjpa.conf,serp.bytecode,org.apache.openjpa.lib.util.concurrent'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.abstractstore'/>
    <p n='uses' v='org.apache.openjpa.lib.rop,org.apache.openjpa.lib.util,org.apache.openjpa.kernel,org.apache.openjpa.conf,org.apache.openjpa.meta,org.apache.openjpa.util,org.apache.openjpa.lib.conf'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.lib.conf'/>
    <p n='uses' v='org.apache.openjpa.lib.util,serp.util,org.apache.commons.lang.exception,org.apache.commons.lang,org.apache.openjpa.lib.log,javax.naming,org.apache.openjpa.lib.util.concurrent'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.openjpa.lib.util.concurrent'/>
    <p n='uses' v='org.apache.openjpa.lib.util,org.apache.commons.collections.set'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibm.websphere.jtaextensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.websphere.jtaextensions
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsspi.uow)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsspi.uow
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.bidimap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.bidimap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.comparators)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.comparators
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.iterators)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.iterators
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.map)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.map
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.set)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.set
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.lang
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.exception)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.lang.exception
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.pool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.pool.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.abstractstore)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.abstractstore ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.ant)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.ant ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.conf)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.conf ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.datacache)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.datacache ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.ee)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.ee ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.enhance)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.enhance ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.event)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.event ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.kernel)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.kernel ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.kernel.exps)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.kernel.exps ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.kernel.jpql)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.kernel.jpql ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.lib.ant)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.lib.ant ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.lib.conf)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.lib.conf ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.lib.graph)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.lib.graph ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.lib.jdbc)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.lib.jdbc ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.lib.log)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.lib.log ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.lib.meta)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.lib.meta ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.lib.rop)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.lib.rop ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.lib.util)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.lib.util ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.lib.util.concurrent)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.lib.util.concurrent ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.lib.xml)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.lib.xml ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.meta)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.meta ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.persistence)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.persistence ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.openjpa.util)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.openjpa.util ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=serp.bytecode)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package serp.bytecode
  </require>
  <require extend='false' filter='(&amp;(package=serp.bytecode.lowlevel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package serp.bytecode.lowlevel
  </require>
  <require extend='false' filter='(&amp;(package=serp.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package serp.util
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.saaj-impl/1.3.0.1' presentationname='Apache ServiceMix Bundles: saaj-impl-1.3' symbolicname='org.apache.servicemix.bundles.saaj-impl' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.saaj-impl/1.3_1/org.apache.servicemix.bundles.saaj-impl-1.3_1.jar' version='1.3.0.1'>
  <description>
    This bundle simply wraps saaj-impl-1.3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    286913
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: saaj-impl-1.3'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.saaj-impl'/>
    <p n='version' t='version' v='1.3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.packaging.mime'/>
    <p n='uses' v='javax.activation,com.sun.xml.messaging.saaj.packaging.mime.internet'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.soap.name'/>
    <p n='uses' v='javax.xml.soap,com.sun.org.apache.xerces.internal.xni,javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.packaging.mime.internet'/>
    <p n='uses' v='com.sun.xml.messaging.saaj.packaging.mime,javax.activation,com.sun.xml.messaging.saaj.util,com.sun.xml.messaging.saaj.packaging.mime.util'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.client.p2p'/>
    <p n='uses' v='javax.xml.soap,com.sun.xml.messaging.saaj.util,com.sun.xml.messaging.saaj'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.soap.ver1_2'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,com.sun.xml.messaging.saaj.soap.name,com.sun.xml.messaging.saaj.packaging.mime.internet,javax.xml.transform,javax.xml.soap,com.sun.xml.messaging.saaj.soap.impl,com.sun.xml.messaging.saaj.soap,com.sun.xml.messaging.saaj.util,com.sun.xml.messaging.saaj'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.soap.impl'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.jaxp,javax.xml.namespace,org.w3c.dom,com.sun.xml.messaging.saaj.soap.name,com.sun.org.apache.xerces.internal.dom,javax.xml.transform,javax.xml.transform.dom,com.sun.xml.messaging.saaj.soap.ver1_2,javax.xml.soap,com.sun.xml.messaging.saaj.util.transform,com.sun.xml.messaging.saaj.soap,com.sun.org.apache.xerces.internal.xni,javax.xml.parsers,com.sun.xml.messaging.saaj.util,javax.xml.transform.stream,com.sun.xml.messaging.saaj.soap.ver1_1,com.sun.xml.messaging.saaj'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.util.transform'/>
    <p n='uses' v='javax.xml.transform.dom,com.sun.org.apache.xalan.internal.xsltc.trax,org.w3c.dom,com.sun.xml.messaging.saaj.util,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.soap'/>
    <p n='uses' v='javax.xml.namespace,com.sun.xml.messaging.saaj.packaging.mime,com.sun.xml.messaging.saaj.soap.name,com.sun.org.apache.xerces.internal.dom,javax.xml.transform,com.sun.xml.messaging.saaj.util.transform,javax.xml.parsers,com.sun.xml.messaging.saaj.util,com.sun.xml.messaging.saaj.soap.ver1_1,javax.xml.transform.stream,com.sun.xml.messaging.saaj.soap.dynamic,com.sun.image.codec.jpeg,org.xml.sax,javax.imageio,javax.activation,org.w3c.dom,com.sun.xml.messaging.saaj.packaging.mime.internet,com.sun.xml.messaging.saaj.soap.ver1_2,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,javax.xml.transform.sax,com.sun.xml.messaging.saaj.soap.impl,com.sun.xml.messaging.saaj.packaging.mime.util,com.sun.xml.messaging.saaj'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.util'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.jaxp,org.xml.sax,com.sun.xml.fastinfoset.dom,org.w3c.dom,javax.xml.transform,javax.xml.soap,org.jvnet.fastinfoset,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.parsers,javax.xml.transform.stream,com.sun.xml.messaging.saaj'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.packaging.mime.util'/>
    <p n='uses' v='com.sun.xml.messaging.saaj.util'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.soap.ver1_1'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,com.sun.xml.messaging.saaj.soap.name,com.sun.xml.messaging.saaj.packaging.mime.internet,javax.xml.transform,javax.xml.soap,com.sun.xml.messaging.saaj.soap.impl,com.sun.xml.messaging.saaj.soap,com.sun.xml.messaging.saaj.util,com.sun.xml.messaging.saaj'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.soap.dynamic'/>
    <p n='uses' v='javax.xml.soap,com.sun.xml.messaging.saaj.soap'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj'/>
    <p n='uses' v='javax.xml.soap'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.image.codec.jpeg)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.image.codec.jpeg
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.trax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.trax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.dom
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.xni)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.xni
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.dom
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.client.p2p)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.client.p2p ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.packaging.mime)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.packaging.mime ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.packaging.mime.internet)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.packaging.mime.internet
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.packaging.mime.util)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.packaging.mime.util
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap.dynamic)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.soap.dynamic ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap.impl)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.soap.impl ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap.name)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.soap.name ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap.ver1_1)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.soap.ver1_1 ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap.ver1_2)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.soap.ver1_2 ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.util)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.util ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.util.transform)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.util.transform ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.jvnet.fastinfoset)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jvnet.fastinfoset
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.josql/1.5.0.1' presentationname='Apache ServiceMix Bundles: josql-1.5' symbolicname='org.apache.servicemix.bundles.josql' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.josql/1.5_1/org.apache.servicemix.bundles.josql-1.5_1.jar' version='1.5.0.1'>
  <description>
    This bundle simply wraps josql-1.5.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    206792
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: josql-1.5'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.josql'/>
    <p n='version' t='version' v='1.5.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.josql.functions'/>
    <p n='uses' v='org.josql,org.josql.internal,com.gentlyweb.utils,org.josql.expressions,org.josql.functions.regexp'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.josql.filters'/>
    <p n='uses' v='javax.swing.filechooser,org.josql,com.gentlyweb.utils,org.josql.expressions'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.josql.incubator'/>
    <p n='uses' v='org.josql,com.gentlyweb.utils,org.josql.expressions'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.josql'/>
    <p n='uses' v='org.josql.functions,org.josql.internal,org.josql.expressions,org.josql.parser,org.josql.events'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.josql.internal'/>
    <p n='uses' v='org.josql,com.gentlyweb.utils,org.josql.expressions'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.josql.parser'/>
    <p n='uses' v='org.josql,org.josql.internal,org.josql.expressions'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.josql.expressions'/>
    <p n='uses' v='org.josql,org.josql.internal,com.gentlyweb.utils,org.josql.events'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.josql.events'/>
    <p n='uses' v='org.josql'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.josql.functions.regexp'/>
    <p n='uses' v='org.josql,org.apache.oro.text.regex,gnu.regexp,org.apache.regexp'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.josql.utils'/>
    <p n='uses' v='org.josql,org.josql.internal'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.josql.contrib'/>
    <p n='uses' v='org.josql,org.apache.tools.ant.types,org.josql.expressions,org.apache.tools.ant,javax.servlet.jsp.tagext,javax.swing.table,org.jfree.data.xy,org.jfree.data.general,net.sf.jasperreports.engine,javax.servlet.jsp,org.apache.tools.ant.types.selectors,javax.swing.event,org.josql.internal,org.jfree.data.category,org.jfree.data'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.gentlyweb.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.gentlyweb.utils
  </require>
  <require extend='false' filter='(&amp;(package=gnu.regexp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package gnu.regexp
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.jsp
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.tagext)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.jsp.tagext
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.event
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.filechooser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.filechooser
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.table)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.table
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.jasperreports.engine)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.jasperreports.engine
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.oro.text.regex)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.oro.text.regex
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.regexp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.regexp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.selectors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.selectors
  </require>
  <require extend='false' filter='(&amp;(package=org.jfree.data)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jfree.data
  </require>
  <require extend='false' filter='(&amp;(package=org.jfree.data.category)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jfree.data.category
  </require>
  <require extend='false' filter='(&amp;(package=org.jfree.data.general)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jfree.data.general
  </require>
  <require extend='false' filter='(&amp;(package=org.jfree.data.xy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jfree.data.xy
  </require>
  <require extend='false' filter='(&amp;(package=org.josql)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.josql ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.josql.contrib)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.josql.contrib ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.josql.events)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.josql.events ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.josql.expressions)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.josql.expressions ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.josql.filters)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.josql.filters ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.josql.functions)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.josql.functions ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.josql.functions.regexp)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.josql.functions.regexp ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.josql.incubator)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.josql.incubator ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.josql.internal)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.josql.internal ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.josql.parser)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.josql.parser ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.josql.utils)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.josql.utils ;version=1.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jencks/2.1.0.1' presentationname='Apache ServiceMix Bundles: jencks-2.1' symbolicname='org.apache.servicemix.bundles.jencks' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jencks/2.1_1/org.apache.servicemix.bundles.jencks-2.1_1.jar' version='2.1.0.1'>
  <description>
    This bundle simply wraps jencks-2.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    65952
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: jencks-2.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jencks'/>
    <p n='version' t='version' v='2.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jencks.interceptor'/>
    <p n='uses' v='javax.servlet,javax.resource,org.apache.commons.logging,org.apache.geronimo.connector.outbound.connectiontracking,org.springframework.beans.factory,org.aopalliance.intercept'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jencks.pool'/>
    <p n='uses' v='org.springframework.transaction.jta,org.apache.commons.pool.impl,org.apache.commons.pool,org.apache.commons.logging,javax.transaction.xa,javax.transaction,org.springframework.transaction.support,javax.jms'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jencks'/>
    <p n='uses' v='org.apache.geronimo.transaction.manager,org.springframework.transaction.jta,javax.resource.spi,javax.resource.spi.work,org.apache.commons.logging,javax.transaction.xa,org.springframework.context,org.springframework.aop,javax.resource.spi.endpoint,org.apache.geronimo.connector.work,org.springframework.transaction,javax.resource,org.springframework.beans,javax.transaction,org.jencks.factory,org.springframework.beans.factory,javax.jms,org.springframework.transaction.support'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jencks.tranql'/>
    <p n='uses' v='org.enhydra.jdbc.standard,org.tranql.connector.jdbc,org.tranql.connector,javax.sql'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jencks.factory'/>
    <p n='uses' v='org.apache.geronimo.transaction.manager,org.jencks,javax.resource.spi,javax.resource.spi.work,org.apache.geronimo.transaction.log,org.apache.geronimo.connector.outbound.connectionmanagerconfig,org.apache.geronimo.connector.work,javax.resource,org.springframework.beans,org.apache.geronimo.connector.outbound.connectiontracking,org.springframework.beans.factory,org.apache.geronimo.connector.outbound,org.apache.geronimo.connector'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.endpoint)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.endpoint ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.work)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.work ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.intercept)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.aopalliance.intercept
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.pool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.pool.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound.connectionmanagerconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound.connectionmanagerconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound.connectiontracking)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound.connectiontracking
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.work)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.work
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.transaction.log
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.manager)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.transaction.manager
  </require>
  <require extend='false' filter='(&amp;(package=org.enhydra.jdbc.standard)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.enhydra.jdbc.standard
  </require>
  <require extend='false' filter='(&amp;(package=org.jencks)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.jencks ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jencks.factory)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.jencks.factory ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jencks.interceptor)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.jencks.interceptor ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jencks.pool)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.jencks.pool ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jencks.tranql)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.jencks.tranql ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.jta)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.jta
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.support
  </require>
  <require extend='false' filter='(&amp;(package=org.tranql.connector)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.tranql.connector
  </require>
  <require extend='false' filter='(&amp;(package=org.tranql.connector.jdbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.tranql.connector.jdbc
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jexcelapi/2.4.2.1' presentationname='Apache ServiceMix Bundles: jxl-2.4.2' symbolicname='org.apache.servicemix.bundles.jexcelapi' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jexcelapi/2.4.2_1/org.apache.servicemix.bundles.jexcelapi-2.4.2_1.jar' version='2.4.2.1'>
  <description>
    This bundle simply wraps jxl-2.4.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    506952
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: jxl-2.4.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jexcelapi'/>
    <p n='version' t='version' v='2.4.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jxl.biff'/>
    <p n='uses' v='jxl.read.biff,jxl.format,jxl.biff.formula,common,jxl.write,jxl,jxl.write.biff'/>
    <p n='version' t='version' v='2.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jxl.read.biff'/>
    <p n='uses' v='jxl.biff,jxl.format,jxl.biff.formula,jxl.biff.drawing,common,jxl'/>
    <p n='version' t='version' v='2.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jxl.format'/>
    <p n='version' t='version' v='2.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jxl.biff.formula'/>
    <p n='uses' v='jxl.biff,jxl.read.biff,common,jxl'/>
    <p n='version' t='version' v='2.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jxl.biff.drawing'/>
    <p n='uses' v='jxl.biff,jxl.read.biff,common,jxl,jxl.write.biff'/>
    <p n='version' t='version' v='2.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='common.log'/>
    <p n='uses' v='common'/>
    <p n='version' t='version' v='2.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='common'/>
    <p n='uses' v='common.log'/>
    <p n='version' t='version' v='2.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jxl.write'/>
    <p n='uses' v='jxl.biff,jxl.format,jxl.biff.drawing,jxl,jxl.write.biff'/>
    <p n='version' t='version' v='2.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jxl.demo'/>
    <p n='uses' v='jxl.read.biff,jxl.format,jxl.biff.formula,common,jxl,jxl.write,jxl.biff'/>
    <p n='version' t='version' v='2.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jxl'/>
    <p n='uses' v='jxl.biff,jxl.read.biff,jxl.format,jxl.biff.formula,common,jxl.write,jxl.write.biff'/>
    <p n='version' t='version' v='2.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jxl.write.biff'/>
    <p n='uses' v='jxl.read.biff,jxl.format,jxl.biff.formula,common,jxl,jxl.write,jxl.biff,jxl.biff.drawing'/>
    <p n='version' t='version' v='2.4.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=common)(version&gt;=2.4.2))' multiple='false' name='package' optional='false'>
    Import package common ;version=2.4.2
  </require>
  <require extend='false' filter='(&amp;(package=common.log)(version&gt;=2.4.2))' multiple='false' name='package' optional='false'>
    Import package common.log ;version=2.4.2
  </require>
  <require extend='false' filter='(&amp;(package=jxl)(version&gt;=2.4.2))' multiple='false' name='package' optional='false'>
    Import package jxl ;version=2.4.2
  </require>
  <require extend='false' filter='(&amp;(package=jxl.biff)(version&gt;=2.4.2))' multiple='false' name='package' optional='false'>
    Import package jxl.biff ;version=2.4.2
  </require>
  <require extend='false' filter='(&amp;(package=jxl.biff.drawing)(version&gt;=2.4.2))' multiple='false' name='package' optional='false'>
    Import package jxl.biff.drawing ;version=2.4.2
  </require>
  <require extend='false' filter='(&amp;(package=jxl.biff.formula)(version&gt;=2.4.2))' multiple='false' name='package' optional='false'>
    Import package jxl.biff.formula ;version=2.4.2
  </require>
  <require extend='false' filter='(&amp;(package=jxl.demo)(version&gt;=2.4.2))' multiple='false' name='package' optional='false'>
    Import package jxl.demo ;version=2.4.2
  </require>
  <require extend='false' filter='(&amp;(package=jxl.format)(version&gt;=2.4.2))' multiple='false' name='package' optional='false'>
    Import package jxl.format ;version=2.4.2
  </require>
  <require extend='false' filter='(&amp;(package=jxl.read.biff)(version&gt;=2.4.2))' multiple='false' name='package' optional='false'>
    Import package jxl.read.biff ;version=2.4.2
  </require>
  <require extend='false' filter='(&amp;(package=jxl.write)(version&gt;=2.4.2))' multiple='false' name='package' optional='false'>
    Import package jxl.write ;version=2.4.2
  </require>
  <require extend='false' filter='(&amp;(package=jxl.write.biff)(version&gt;=2.4.2))' multiple='false' name='package' optional='false'>
    Import package jxl.write.biff ;version=2.4.2
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.oscore/2.2.4.1' presentationname='Apache ServiceMix Bundles: oscore-2.2.4' symbolicname='org.apache.servicemix.bundles.oscore' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.oscore/2.2.4_1/org.apache.servicemix.bundles.oscore-2.2.4_1.jar' version='2.2.4.1'>
  <description>
    This bundle simply wraps oscore-2.2.4.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    94658
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: oscore-2.2.4'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.oscore'/>
    <p n='version' t='version' v='2.2.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.module.sequence'/>
    <p n='uses' v='javax.ejb,javax.naming,javax.rmi'/>
    <p n='version' t='version' v='2.2.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.provider.xmlprinter'/>
    <p n='uses' v='org.apache.xalan.serialize,org.w3c.dom,com.opensymphony.provider'/>
    <p n='version' t='version' v='2.2.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.provider.xpath'/>
    <p n='uses' v='com.opensymphony.provider,org.apache.xpath,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='2.2.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.provider'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='2.2.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.provider.bean'/>
    <p n='uses' v='com.opensymphony.provider,ognl'/>
    <p n='version' t='version' v='2.2.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.module.random'/>
    <p n='uses' v='org.apache.commons.logging'/>
    <p n='version' t='version' v='2.2.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.util'/>
    <p n='uses' v='com.opensymphony.provider.xmlprinter,com.opensymphony.provider.xpath,javax.xml.transform,com.opensymphony.provider.log,javax.naming,javax.servlet,javax.xml.parsers,javax.mail.internet,com.opensymphony.provider,com.opensymphony.provider.bean,javax.xml.transform.stream,org.xml.sax,org.w3c.dom,org.apache.commons.logging,javax.xml.transform.dom,javax.ejb,org.xml.sax.helpers,javax.mail,javax.rmi,com.opensymphony.module.random'/>
    <p n='version' t='version' v='2.2.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.provider.log'/>
    <p n='uses' v='org.apache.log4j,com.opensymphony.provider'/>
    <p n='version' t='version' v='2.2.4'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.random)(version&gt;=2.2.4))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.random ;version=2.2.4
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.sequence)(version&gt;=2.2.4))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.sequence ;version=2.2.4
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.provider)(version&gt;=2.2.4))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.provider ;version=2.2.4
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.provider.bean)(version&gt;=2.2.4))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.provider.bean ;version=2.2.4
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.provider.log)(version&gt;=2.2.4))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.provider.log ;version=2.2.4
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.provider.xmlprinter)(version&gt;=2.2.4))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.provider.xmlprinter ;version=2.2.4
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.provider.xpath)(version&gt;=2.2.4))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.provider.xpath ;version=2.2.4
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.util)(version&gt;=2.2.4))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.util ;version=2.2.4
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.mail.internet
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=ognl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package ognl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.serialize)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xalan.serialize
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.wss4j/1.5.4.1' presentationname='Apache ServiceMix Bundles: wss4j-1.5.4' symbolicname='org.apache.servicemix.bundles.wss4j' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.wss4j/1.5.4_1/org.apache.servicemix.bundles.wss4j-1.5.4_1.jar' version='1.5.4.1'>
  <description>
    This bundle simply wraps wss4j-1.5.4.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    309990
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: wss4j-1.5.4'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.wss4j'/>
    <p n='version' t='version' v='1.5.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.security.message'/>
    <p n='uses' v='javax.xml.namespace,javax.crypto,org.apache.xml.security.transforms,org.apache.xml.security.encryption,org.apache.xml.security.keys,org.apache.xml.security.utils.resolver,org.apache.xml.security.utils,org.apache.ws.security.util,org.apache.ws.security.saml,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.xml.security.exceptions,org.apache.commons.logging,org.opensaml,org.apache.xml.security.transforms.params,org.apache.xml.security.algorithms,org.apache.ws.security.message.token,org.apache.xml.utils,org.apache.ws.security.conversation,org.apache.xml.security.keys.content,org.apache.xml.security.keys.content.x509,org.apache.ws.security.conversation.dkalgo,org.apache.xml.security.signature,org.apache.ws.security'/>
    <p n='version' t='version' v='1.5.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.security.saml'/>
    <p n='uses' v='org.apache.ws.security.message,javax.xml.namespace,org.apache.xml.security.transforms,org.apache.xml.security.keys,org.apache.xml.security.utils.resolver,org.apache.xml.security.utils,org.apache.ws.security.util,javax.security.auth.callback,org.apache.xml.security.exceptions,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.commons.logging,org.opensaml,org.apache.xml.security.transforms.params,org.apache.xml.security.algorithms,org.apache.ws.security.message.token,org.apache.xml.security.keys.content,org.apache.xml.security.keys.content.x509,org.apache.ws.security.processor,org.apache.xml.security.signature,org.apache.ws.security'/>
    <p n='version' t='version' v='1.5.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.security.transform'/>
    <p n='uses' v='org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.commons.logging,org.apache.xml.security.transforms,org.apache.xml.security.c14n,org.apache.ws.security.message.token,org.apache.xml.security.utils,org.apache.ws.security.util,org.apache.xml.security.signature,org.apache.ws.security,javax.security.auth.callback'/>
    <p n='version' t='version' v='1.5.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.axis.security.handler'/>
    <p n='uses' v='org.apache.axis.components.logger,org.apache.ws.security.handler,javax.xml.namespace,org.apache.axis.utils,org.w3c.dom,org.apache.commons.logging,org.apache.axis'/>
    <p n='version' t='version' v='1.5.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.security.components.crypto'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.xml.security.utils,org.apache.ws.security.util,org.apache.ws.security'/>
    <p n='version' t='version' v='1.5.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.security.action'/>
    <p n='uses' v='org.apache.ws.security.message,org.apache.ws.security.saml,javax.xml.namespace,org.w3c.dom,org.apache.ws.security.components.crypto,org.opensaml,org.apache.commons.logging,org.apache.ws.security.handler,org.apache.ws.security.util,org.apache.ws.security'/>
    <p n='version' t='version' v='1.5.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.security.message.token'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.xml.security.exceptions,org.apache.commons.logging,javax.crypto,org.apache.ws.security.conversation,org.apache.xml.security.keys.content,javax.crypto.spec,org.apache.xml.security.keys.content.x509,org.apache.ws.security.util,org.apache.ws.security,javax.security.auth.callback'/>
    <p n='version' t='version' v='1.5.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.security.conversation'/>
    <p n='version' t='version' v='1.5.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.security.handler'/>
    <p n='uses' v='org.apache.ws.security.message,javax.xml.namespace,org.apache.ws.security.action,javax.xml.transform,javax.xml.rpc.handler,javax.xml.parsers,org.apache.xml.security.utils,org.apache.ws.security.util,javax.xml.transform.stream,javax.security.auth.callback,org.xml.sax,org.w3c.dom,org.apache.ws.security.components.crypto,org.apache.commons.logging,org.apache.ws.security.message.token,javax.xml.soap,javax.xml.rpc,javax.xml.rpc.handler.soap,org.apache.ws.security'/>
    <p n='version' t='version' v='1.5.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.security.conversation.dkalgo'/>
    <p n='uses' v='org.apache.ws.security.conversation,javax.crypto.spec,javax.crypto'/>
    <p n='version' t='version' v='1.5.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.security.processor'/>
    <p n='uses' v='org.apache.ws.security.message,org.apache.ws.security.saml,javax.xml.namespace,org.apache.xml.security.exceptions,org.apache.ws.security.components.crypto,org.w3c.dom,org.opensaml,org.apache.commons.logging,javax.crypto,org.apache.xml.security.encryption,org.apache.ws.security.message.token,org.apache.xml.security.keys,org.apache.xml.security.utils.resolver,org.apache.ws.security.conversation.dkalgo,org.apache.ws.security.util,org.apache.xml.security.signature,org.apache.ws.security,javax.security.auth.callback'/>
    <p n='version' t='version' v='1.5.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.security.util'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,javax.crypto,org.apache.xml.security.algorithms,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.ws.security.handler,javax.crypto.spec,javax.xml.transform.stream,org.apache.ws.security'/>
    <p n='version' t='version' v='1.5.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.security'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.ws.security.components.crypto,org.opensaml,org.apache.commons.logging,org.apache.xml.security,org.apache.xml.security.transforms,org.apache.ws.security.action,org.apache.ws.security.message.token,org.apache.ws.security.processor,org.apache.ws.security.util,javax.security.auth.callback'/>
    <p n='version' t='version' v='1.5.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.axis.security'/>
    <p n='uses' v='org.apache.ws.axis.security.handler,org.apache.axis.message,javax.xml.namespace,org.apache.axis.utils,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.commons.logging,org.apache.ws.security.message.token,javax.xml.soap,org.apache.ws.security.handler,org.apache.xml.security.utils,org.apache.ws.security.util,org.apache.ws.security,org.apache.axis,javax.security.auth.callback'/>
    <p n='version' t='version' v='1.5.4'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto.spec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto.spec
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.rpc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.rpc.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.rpc.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.rpc.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.components.logger)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis.components.logger
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.axis.security)(version&gt;=1.5.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.axis.security ;version=1.5.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.axis.security.handler)(version&gt;=1.5.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.axis.security.handler ;version=1.5.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=1.5.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.security ;version=1.5.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.action)(version&gt;=1.5.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.security.action ;version=1.5.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=1.5.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.security.components.crypto ;version=1.5.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation)(version&gt;=1.5.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.security.conversation ;version=1.5.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.conversation.dkalgo)(version&gt;=1.5.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.security.conversation.dkalgo ;version=1.5.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=1.5.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.security.handler ;version=1.5.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message)(version&gt;=1.5.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.security.message ;version=1.5.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=1.5.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.security.message.token ;version=1.5.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.processor)(version&gt;=1.5.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.security.processor ;version=1.5.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.saml)(version&gt;=1.5.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.security.saml ;version=1.5.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.transform)(version&gt;=1.5.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.security.transform ;version=1.5.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=1.5.4))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.security.util ;version=1.5.4
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.algorithms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.algorithms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.c14n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.c14n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.encryption)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.encryption
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.exceptions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.exceptions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content.x509)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content.x509
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.signature)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.signature
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.transforms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.transforms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.transforms.params)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.transforms.params
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.utils.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.utils.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xml.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.opensaml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.opensaml
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.isorelax/20050913.0.0.1' presentationname='Apache ServiceMix Bundles: isorelax-20050913' symbolicname='org.apache.servicemix.bundles.isorelax' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.isorelax/20050913_1/org.apache.servicemix.bundles.isorelax-20050913_1.jar' version='20050913.0.0.1'>
  <description>
    This bundle simply wraps isorelax-20050913.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    99395
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: isorelax-20050913'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.isorelax'/>
    <p n='version' t='version' v='20050913.0.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.iso_relax.verifier'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.iso_relax.dispatcher'/>
    <p n='uses' v='org.xml.sax'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.iso_relax.catalog'/>
    <p n='uses' v='org.xml.sax,javax.xml.parsers,org.xml.sax.helpers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.iso_relax.verifier.impl'/>
    <p n='uses' v='org.iso_relax.verifier,org.xml.sax,org.xml.sax.ext,jp.gr.xml.relax.sax,javax.xml.parsers,org.xml.sax.helpers,org.w3c.dom,jp.gr.xml.relax.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jp.gr.xml.relax.lib'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jp.gr.xml.relax.xml'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.iso_relax.jaxp'/>
    <p n='uses' v='org.iso_relax.verifier,org.xml.sax,org.xml.sax.helpers,javax.xml.parsers,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.iso_relax.dispatcher.impl'/>
    <p n='uses' v='org.iso_relax.dispatcher,org.xml.sax,org.xml.sax.helpers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.iso_relax.verifier.jaxp.validation'/>
    <p n='uses' v='org.w3c.dom.ls,org.iso_relax.verifier,org.xml.sax,org.w3c.dom,org.iso_relax.verifier.impl,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,org.xml.sax.helpers,javax.xml.transform.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jp.gr.xml.relax.sax'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,org.w3c.dom,jp.gr.xml.relax.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jp.gr.xml.relax.swift'/>
    <p n='uses' v='jp.co.swiftinc.relax.schema,org.iso_relax.verifier,jp.co.swiftinc.relax.verifier,org.apache.xerces.parsers,org.xml.sax,jp.gr.xml.relax.sax,javax.xml.parsers,org.w3c.dom,org.iso_relax.verifier.impl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.iso_relax.ant'/>
    <p n='uses' v='org.iso_relax.verifier,org.apache.tools.ant.types,org.xml.sax,org.apache.tools.ant'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jp.gr.xml.relax.dom'/>
    <p n='uses' v='jp.gr.xml.relax.xml,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=jp.co.swiftinc.relax.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package jp.co.swiftinc.relax.schema
  </require>
  <require extend='false' filter='(&amp;(package=jp.co.swiftinc.relax.verifier)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package jp.co.swiftinc.relax.verifier
  </require>
  <require extend='false' filter='(&amp;(package=jp.gr.xml.relax.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package jp.gr.xml.relax.dom
  </require>
  <require extend='false' filter='(&amp;(package=jp.gr.xml.relax.lib)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package jp.gr.xml.relax.lib
  </require>
  <require extend='false' filter='(&amp;(package=jp.gr.xml.relax.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package jp.gr.xml.relax.sax
  </require>
  <require extend='false' filter='(&amp;(package=jp.gr.xml.relax.swift)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package jp.gr.xml.relax.swift
  </require>
  <require extend='false' filter='(&amp;(package=jp.gr.xml.relax.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package jp.gr.xml.relax.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xerces.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.iso_relax.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.catalog)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.iso_relax.catalog
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.dispatcher)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.iso_relax.dispatcher
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.dispatcher.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.iso_relax.dispatcher.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.iso_relax.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.verifier)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.iso_relax.verifier
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.verifier.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.iso_relax.verifier.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.verifier.jaxp.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.iso_relax.verifier.jaxp.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.commons-codec/1.2.0.1' presentationname='Apache ServiceMix Bundles: commons-codec-1.2' symbolicname='org.apache.servicemix.bundles.commons-codec' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-codec/1.2_1/org.apache.servicemix.bundles.commons-codec-1.2_1.jar' version='1.2.0.1'>
  <description>
    This bundle simply wraps commons-codec-1.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    36371
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: commons-codec-1.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.commons-codec'/>
    <p n='version' t='version' v='1.2.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.codec'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.codec.digest'/>
    <p n='uses' v='org.apache.commons.codec.binary'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.codec.binary'/>
    <p n='uses' v='org.apache.commons.codec'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.codec.net'/>
    <p n='uses' v='org.apache.commons.codec'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.codec.language'/>
    <p n='uses' v='org.apache.commons.codec'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.codec ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.binary)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.codec.binary ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.digest)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.codec.digest ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.language)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.codec.language ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.net)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.codec.net ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.antlr-runtime/3.0.1.1' presentationname='Apache ServiceMix Bundles: antlr-runtime-3.0.1' symbolicname='org.apache.servicemix.bundles.antlr-runtime' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.antlr-runtime/3.0.1_1/org.apache.servicemix.bundles.antlr-runtime-3.0.1_1.jar' version='3.0.1.1'>
  <description>
    This bundle simply wraps antlr-runtime-3.0.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    113208
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: antlr-runtime-3.0.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.antlr-runtime'/>
    <p n='version' t='version' v='3.0.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.antlr.runtime.tree'/>
    <p n='uses' v='org.antlr.stringtemplate,org.antlr.runtime'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.antlr.runtime.debug'/>
    <p n='uses' v='org.antlr.runtime.tree,org.antlr.runtime.misc,org.antlr.runtime'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.antlr.runtime.misc'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.antlr.runtime'/>
    <p n='uses' v='org.antlr.runtime.tree'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.antlr.runtime)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.antlr.runtime ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.antlr.runtime.debug)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.antlr.runtime.debug ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.antlr.runtime.misc)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.antlr.runtime.misc ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.antlr.runtime.tree)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package org.antlr.runtime.tree ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.antlr.stringtemplate)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.antlr.stringtemplate
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.asm/2.2.3.1' presentationname='Apache ServiceMix Bundles: asm-2.2.3' symbolicname='org.apache.servicemix.bundles.asm' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.asm/2.2.3_1/org.apache.servicemix.bundles.asm-2.2.3_1.jar' version='2.2.3.1'>
  <description>
    This bundle simply wraps asm-2.2.3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    184748
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: asm-2.2.3'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.asm'/>
    <p n='version' t='version' v='2.2.3.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.tree.analysis'/>
    <p n='uses' v='org.objectweb.asm.tree,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.commons'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.tree'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.util'/>
    <p n='uses' v='org.objectweb.asm.tree.analysis,org.objectweb.asm.tree,org.objectweb.asm.signature,org.objectweb.asm.util.attrs,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.signature'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.attrs'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.util.attrs'/>
    <p n='uses' v='org.objectweb.asm.attrs,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.xml'/>
    <p n='uses' v='org.xml.sax,org.objectweb.asm.util,org.objectweb.asm,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.attrs)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.attrs ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.signature)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.signature ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree.analysis)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree.analysis ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.util)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.util ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.util.attrs)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.util.attrs ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.xml)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.xml ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jdom/1.1.0.1' presentationname='Apache ServiceMix Bundles: jdom-1.1' symbolicname='org.apache.servicemix.bundles.jdom' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jdom/1.1_1/org.apache.servicemix.bundles.jdom-1.1_1.jar' version='1.1.0.1'>
  <description>
    This bundle simply wraps jdom-1.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    153880
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: jdom-1.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jdom'/>
    <p n='version' t='version' v='1.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jdom.xpath'/>
    <p n='uses' v='org.jaxen,org.jdom,org.jaxen.jdom'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jdom.input'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.parsers,org.w3c.dom,org.jdom'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jdom.adapters'/>
    <p n='uses' v='org.xml.sax,org.apache.xerces.dom,org.apache.xerces.parsers,oracle.xml.parser.v2,org.w3c.dom,org.jdom,javax.xml.transform,org.jdom.input,javax.xml.parsers,oracle.xml.parser'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jdom.transform'/>
    <p n='uses' v='org.xml.sax,org.jdom,javax.xml.transform,javax.xml.transform.sax,org.jdom.input,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.transform.stream,org.jdom.output'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jdom.filter'/>
    <p n='uses' v='org.jdom'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jdom'/>
    <p n='uses' v='org.xml.sax,org.jdom.filter,org.jdom.output'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jdom.output'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,org.jdom.adapters,org.w3c.dom,org.jdom'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=oracle.xml.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package oracle.xml.parser
  </require>
  <require extend='false' filter='(&amp;(package=oracle.xml.parser.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package oracle.xml.parser.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xerces.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xerces.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.adapters)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.adapters ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.filter)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.filter ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.input ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.output ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.transform)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.transform ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.xpath ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.commons-httpclient/3.1.0.1' presentationname='Apache ServiceMix Bundles: commons-httpclient-3.1' symbolicname='org.apache.servicemix.bundles.commons-httpclient' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-httpclient/3.1_1/org.apache.servicemix.bundles.commons-httpclient-3.1_1.jar' version='3.1.0.1'>
  <description>
    This bundle simply wraps commons-httpclient-3.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    311525
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: commons-httpclient-3.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.commons-httpclient'/>
    <p n='version' t='version' v='3.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.httpclient.util'/>
    <p n='uses' v='org.apache.commons.httpclient,org.apache.commons.codec,org.apache.commons.logging,org.apache.commons.codec.net'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.httpclient'/>
    <p n='uses' v='org.apache.commons.httpclient.params,org.apache.commons.httpclient.auth,org.apache.commons.httpclient.protocol,org.apache.commons.logging,org.apache.commons.httpclient.util,org.apache.commons.httpclient.cookie,org.apache.commons.codec,org.apache.commons.codec.net'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.httpclient.cookie'/>
    <p n='uses' v='org.apache.commons.httpclient.util,org.apache.commons.httpclient,org.apache.commons.logging'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.httpclient.params'/>
    <p n='uses' v='org.apache.commons.httpclient,org.apache.commons.logging'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.httpclient.methods'/>
    <p n='uses' v='org.apache.commons.httpclient.util,org.apache.commons.httpclient,org.apache.commons.httpclient.params,org.apache.commons.httpclient.methods.multipart,org.apache.commons.logging'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.httpclient.auth'/>
    <p n='uses' v='org.apache.commons.httpclient,org.apache.commons.httpclient.util,org.apache.commons.httpclient.params,javax.crypto.spec,org.apache.commons.logging,javax.crypto,org.apache.commons.codec.binary'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.httpclient.protocol'/>
    <p n='uses' v='org.apache.commons.httpclient.util,org.apache.commons.httpclient,org.apache.commons.httpclient.params,javax.net,javax.net.ssl'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.httpclient.methods.multipart'/>
    <p n='uses' v='org.apache.commons.httpclient.util,org.apache.commons.httpclient.methods,org.apache.commons.httpclient.params,org.apache.commons.logging'/>
    <p n='version' t='version' v='3.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto.spec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto.spec
  </require>
  <require extend='false' filter='(&amp;(package=javax.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.binary)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec.binary
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.codec.net
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.auth)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.auth ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.cookie)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.cookie ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.methods)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.methods ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.methods.multipart)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.methods.multipart
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.params)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.params ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.protocol)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.protocol ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.util)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.util ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.quartz/1.6.1.1' presentationname='Apache ServiceMix Bundles: quartz-1.6.1' symbolicname='org.apache.servicemix.bundles.quartz' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.quartz/1.6.1_1/org.apache.servicemix.bundles.quartz-1.6.1_1.jar' version='1.6.1.1'>
  <description>
    This bundle simply wraps quartz-1.6.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    457109
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: quartz-1.6.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.quartz'/>
    <p n='version' t='version' v='1.6.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.jobs.ee.ejb'/>
    <p n='uses' v='javax.ejb,javax.naming,javax.rmi,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.xml'/>
    <p n='uses' v='org.apache.commons.beanutils,org.xml.sax,org.apache.commons.digester,org.apache.commons.logging,org.quartz.spi,org.xml.sax.helpers,javax.xml.parsers,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.helpers'/>
    <p n='uses' v='org.quartz.core,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.ee.jta'/>
    <p n='uses' v='javax.naming,org.quartz.core,org.apache.commons.logging,javax.transaction,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.core'/>
    <p n='uses' v='org.apache.commons.modeler,org.quartz.listeners,org.quartz.impl,org.apache.commons.logging,org.quartz.spi,org.quartz.simpl,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.utils'/>
    <p n='uses' v='javax.naming,org.apache.commons.logging,org.apache.commons.dbcp,javax.sql'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.ee.servlet'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.quartz.impl,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.jobs.ee.jms'/>
    <p n='uses' v='javax.naming,org.quartz,javax.jms'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.listeners'/>
    <p n='uses' v='org.quartz.utils,org.apache.commons.logging,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.plugins.xml'/>
    <p n='uses' v='org.quartz.xml,org.quartz.jobs,org.apache.commons.logging,org.quartz.plugins,org.quartz.spi,org.quartz.simpl,javax.transaction,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.jobs'/>
    <p n='uses' v='org.apache.commons.logging,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.impl'/>
    <p n='uses' v='org.quartz.ee.jta,org.quartz.utils,org.quartz.core,javax.management,org.quartz.listeners,org.apache.commons.logging,org.quartz.impl.jdbcjobstore,org.quartz.spi,org.quartz.simpl,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.plugins.history'/>
    <p n='uses' v='org.quartz.spi,org.apache.commons.logging,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.impl.jdbcjobstore'/>
    <p n='uses' v='org.quartz.utils,org.quartz.core,org.apache.commons.logging,javax.naming,org.quartz.spi,javax.transaction,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.plugins.management'/>
    <p n='uses' v='org.quartz.spi,org.apache.commons.logging,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.plugins'/>
    <p n='uses' v='org.quartz.ee.jta,org.quartz.spi,org.apache.commons.logging,javax.transaction,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.spi'/>
    <p n='uses' v='org.quartz.core,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.jobs.ee.jmx'/>
    <p n='uses' v='javax.management,org.apache.commons.logging,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.impl.calendar'/>
    <p n='uses' v='org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.simpl'/>
    <p n='uses' v='org.quartz.core,org.quartz.spi,org.apache.commons.logging,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz'/>
    <p n='uses' v='org.quartz.utils,org.quartz.spi,org.apache.commons.collections'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.jobs.ee.mail'/>
    <p n='uses' v='javax.mail.internet,javax.mail,org.apache.commons.logging,org.quartz'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.mail.internet
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.beanutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.beanutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.dbcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.digester)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.digester
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.modeler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.modeler
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.core)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.core ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.ee.jta)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.ee.jta ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.ee.servlet)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.ee.servlet ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.helpers)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.helpers ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.impl)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.impl ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.impl.calendar)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.impl.calendar ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.impl.jdbcjobstore)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.impl.jdbcjobstore ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.jobs)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.jobs ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.jobs.ee.ejb)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.jobs.ee.ejb ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.jobs.ee.jms)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.jobs.ee.jms ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.jobs.ee.jmx)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.jobs.ee.jmx ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.jobs.ee.mail)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.jobs.ee.mail ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.listeners)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.listeners ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.plugins)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.plugins ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.plugins.history)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.plugins.history ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.plugins.management)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.plugins.management ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.plugins.xml)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.plugins.xml ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.simpl)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.simpl ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.spi)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.spi ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.utils)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.utils ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.xml)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package org.quartz.xml ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.quartz/1.5.2.1' presentationname='Apache ServiceMix Bundles: quartz-1.5.2' symbolicname='org.apache.servicemix.bundles.quartz' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.quartz/1.5.2_1/org.apache.servicemix.bundles.quartz-1.5.2_1.jar' version='1.5.2.1'>
  <description>
    This bundle simply wraps quartz-1.5.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    399274
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: quartz-1.5.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.quartz'/>
    <p n='version' t='version' v='1.5.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.jobs.ee.ejb'/>
    <p n='uses' v='javax.ejb,javax.naming,javax.rmi,org.quartz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.xml'/>
    <p n='uses' v='org.apache.commons.beanutils,org.xml.sax,org.apache.commons.digester,org.apache.commons.logging,javax.xml.parsers,org.xml.sax.helpers,org.quartz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.helpers'/>
    <p n='uses' v='org.quartz.core,org.quartz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.ee.jta'/>
    <p n='uses' v='javax.naming,org.quartz.core,org.apache.commons.logging,javax.transaction,org.quartz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.core'/>
    <p n='uses' v='org.quartz.impl,org.apache.commons.logging,org.quartz.spi,org.quartz.simpl,org.quartz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.utils'/>
    <p n='uses' v='javax.naming,org.apache.commons.logging,org.apache.commons.dbcp,javax.sql'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.ee.servlet'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.quartz.impl,org.quartz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.plugins.xml'/>
    <p n='uses' v='org.quartz.xml,org.quartz.spi,org.quartz.jobs,org.apache.commons.logging,org.quartz.simpl,org.quartz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.plugins.history'/>
    <p n='uses' v='org.quartz.spi,org.apache.commons.logging,org.quartz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.jobs'/>
    <p n='uses' v='org.apache.commons.logging,org.quartz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.impl'/>
    <p n='uses' v='org.quartz.core,org.quartz.utils,org.quartz.ee.jta,org.apache.commons.logging,org.quartz.impl.jdbcjobstore,org.quartz.spi,org.quartz.simpl,org.quartz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.impl.jdbcjobstore'/>
    <p n='uses' v='org.quartz.utils,org.quartz.core,org.apache.commons.logging,org.quartz.spi,org.quartz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.plugins.management'/>
    <p n='uses' v='org.quartz.spi,org.apache.commons.logging,org.quartz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.spi'/>
    <p n='uses' v='org.quartz.core,org.quartz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.jobs.ee.jmx'/>
    <p n='uses' v='javax.management,org.apache.commons.logging,org.quartz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.impl.calendar'/>
    <p n='uses' v='org.quartz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.simpl'/>
    <p n='uses' v='org.quartz.core,org.quartz.spi,org.apache.commons.logging,org.quartz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz'/>
    <p n='uses' v='org.quartz.utils,org.quartz.spi'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.quartz.jobs.ee.mail'/>
    <p n='uses' v='javax.mail.internet,javax.mail,org.apache.commons.logging,org.quartz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.mail.internet
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.beanutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.beanutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.dbcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.digester)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.digester
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.core)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.core ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.ee.jta)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.ee.jta ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.ee.servlet)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.ee.servlet ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.helpers)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.helpers ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.impl)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.impl ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.impl.calendar)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.impl.calendar ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.impl.jdbcjobstore)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.impl.jdbcjobstore ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.jobs)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.jobs ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.jobs.ee.ejb)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.jobs.ee.ejb ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.jobs.ee.jmx)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.jobs.ee.jmx ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.jobs.ee.mail)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.jobs.ee.mail ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.plugins.history)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.plugins.history ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.plugins.management)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.plugins.management ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.plugins.xml)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.plugins.xml ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.simpl)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.simpl ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.spi)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.spi ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.utils)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.utils ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.quartz.xml)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.quartz.xml ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.asm-2.2.3/1.0.0.m2' presentationname='ServiceMix OSGI Common Bundles: asm-2.2.3' symbolicname='org.apache.servicemix.bundles.asm-2.2.3' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.asm-2.2.3/1.0-m2/org.apache.servicemix.bundles.asm-2.2.3-1.0-m2.jar' version='1.0.0.m2'>
  <description>
    This bundle simply wraps asm-2.2.3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    184331
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix OSGI Common Bundles: asm-2.2.3'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.asm-2.2.3'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.tree.analysis'/>
    <p n='uses' v='org.objectweb.asm.tree,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.commons'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.tree'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.util'/>
    <p n='uses' v='org.objectweb.asm.tree.analysis,org.objectweb.asm.tree,org.objectweb.asm.signature,org.objectweb.asm.util.attrs,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.signature'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.attrs'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.util.attrs'/>
    <p n='uses' v='org.objectweb.asm.attrs,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.xml'/>
    <p n='uses' v='org.xml.sax,org.objectweb.asm.util,org.objectweb.asm,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.attrs)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.attrs ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.signature)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.signature ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree.analysis)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree.analysis ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.util)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.util ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.util.attrs)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.util.attrs ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.xml)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.xml ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.asm-2.2.3/1.0.0.m1' presentationname='ServiceMix OSGI Common Bundles: asm-2.2.3' symbolicname='org.apache.servicemix.bundles.asm-2.2.3' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.asm-2.2.3/1.0-m1/org.apache.servicemix.bundles.asm-2.2.3-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    This bundle simply wraps asm-2.2.3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    184335
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix OSGI Common Bundles: asm-2.2.3'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.asm-2.2.3'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.tree.analysis'/>
    <p n='uses' v='org.objectweb.asm.tree,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.commons'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.tree'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.util'/>
    <p n='uses' v='org.objectweb.asm.tree.analysis,org.objectweb.asm.tree,org.objectweb.asm.signature,org.objectweb.asm.util.attrs,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.signature'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.attrs'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.util.attrs'/>
    <p n='uses' v='org.objectweb.asm.attrs,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.xml'/>
    <p n='uses' v='org.xml.sax,org.objectweb.asm.util,org.objectweb.asm,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.attrs)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.attrs ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.signature)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.signature ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree.analysis)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree.analysis ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.util)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.util ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.util.attrs)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.util.attrs ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.xml)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.xml ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.asm-2.2.3/1.0.0.rc1' presentationname='Apache ServiceMix OSGI Common Bundles: asm-2.2.3' symbolicname='org.apache.servicemix.bundles.asm-2.2.3' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.asm-2.2.3/1.0.0-rc1/org.apache.servicemix.bundles.asm-2.2.3-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    This bundle simply wraps asm-2.2.3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    184507
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: asm-2.2.3'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.asm-2.2.3'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.tree.analysis'/>
    <p n='uses' v='org.objectweb.asm.tree,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.commons'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.tree'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.util'/>
    <p n='uses' v='org.objectweb.asm.tree.analysis,org.objectweb.asm.tree,org.objectweb.asm.signature,org.objectweb.asm.util.attrs,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.signature'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.attrs'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.util.attrs'/>
    <p n='uses' v='org.objectweb.asm.attrs,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.xml'/>
    <p n='uses' v='org.xml.sax,org.objectweb.asm.util,org.objectweb.asm,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.attrs)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.attrs ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.signature)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.signature ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree.analysis)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree.analysis ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.util)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.util ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.util.attrs)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.util.attrs ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.xml)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.xml ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.asm-2.2.3/1.0.0.m3' presentationname='Apache ServiceMix OSGI Common Bundles: asm-2.2.3' symbolicname='org.apache.servicemix.bundles.asm-2.2.3' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.asm-2.2.3/1.0-m3/org.apache.servicemix.bundles.asm-2.2.3-1.0-m3.jar' version='1.0.0.m3'>
  <description>
    This bundle simply wraps asm-2.2.3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    184535
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: asm-2.2.3'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.asm-2.2.3'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.tree.analysis'/>
    <p n='uses' v='org.objectweb.asm.tree,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.commons'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.tree'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.util'/>
    <p n='uses' v='org.objectweb.asm.tree.analysis,org.objectweb.asm.tree,org.objectweb.asm.signature,org.objectweb.asm.util.attrs,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.signature'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.attrs'/>
    <p n='uses' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.util.attrs'/>
    <p n='uses' v='org.objectweb.asm.attrs,org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm.xml'/>
    <p n='uses' v='org.xml.sax,org.objectweb.asm.util,org.objectweb.asm,javax.xml.transform,javax.xml.transform.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.asm'/>
    <p n='version' t='version' v='2.2.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.attrs)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.attrs ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.commons)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.commons ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.signature)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.signature ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree.analysis)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree.analysis ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.util)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.util ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.util.attrs)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.util.attrs ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.xml)(version&gt;=2.2.3))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.xml ;version=2.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.xalan/2.7.1.1' presentationname='Apache ServiceMix Bundles: xalan-2.7.1' symbolicname='org.apache.servicemix.bundles.xalan' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.xalan/2.7.1_1/org.apache.servicemix.bundles.xalan-2.7.1_1.jar' version='2.7.1.1'>
  <description>
    This bundle simply wraps xalan-2.7.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    3186130
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: xalan-2.7.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.xalan'/>
    <p n='version' t='version' v='2.7.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='java_cup.runtime'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xpath.axes'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.xml.dtm,org.apache.xpath.res,org.apache.xpath.functions,org.apache.xpath.objects,org.w3c.dom.traversal,org.w3c.dom,org.xml.sax,org.apache.xpath.patterns,org.apache.xpath,javax.xml.transform,org.apache.xpath.operations,org.apache.xpath.compiler'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.dtm'/>
    <p n='uses' v='org.apache.xml.utils,org.xml.sax.ext,javax.xml.transform,org.apache.xml.res,org.w3c.dom,org.xml.sax'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xpath.res'/>
    <p n='uses' v='org.apache.xml.res'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.xsltc.cmdline'/>
    <p n='uses' v='org.apache.xml.dtm,org.apache.xalan.xsltc.cmdline.getopt,javax.xml.parsers,org.xml.sax,org.apache.xalan.xsltc.runtime,org.apache.xalan.xsltc.runtime.output,org.apache.xml.serializer,org.apache.xalan.xsltc,javax.xml.transform,org.apache.xalan.xsltc.compiler,org.apache.xalan.xsltc.compiler.util,javax.xml.transform.sax,org.apache.xalan.xsltc.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.bcel.verifier'/>
    <p n='uses' v='javax.swing.text,javax.swing.border,org.apache.bcel.verifier.statics,org.apache.bcel,org.apache.bcel.verifier.structurals,org.apache.bcel.classfile,javax.swing,org.apache.bcel.generic,javax.swing.event'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.bcel.verifier.structurals'/>
    <p n='uses' v='org.apache.bcel.classfile,org.apache.bcel.verifier.exc,org.apache.bcel.generic,org.apache.bcel,org.apache.bcel.verifier'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xpath.objects'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.xpath.axes,org.apache.xml.dtm,org.apache.xpath.res,org.apache.xml.dtm.ref,org.w3c.dom.traversal,org.w3c.dom,org.xml.sax,org.xml.sax.ext,org.apache.xpath,javax.xml.transform'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.lib.sql'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.xpath.axes,javax.naming,org.apache.xml.dtm,org.apache.xalan.res,org.apache.xml.dtm.ref,org.apache.xpath.objects,org.w3c.dom,org.xml.sax,org.apache.xpath,org.xml.sax.ext,javax.xml.transform,org.apache.xalan.extensions'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.transformer'/>
    <p n='uses' v='org.apache.xpath.axes,org.apache.xml.dtm.ref.sax2dtm,org.apache.xalan.serialize,org.apache.xml.dtm,org.apache.xpath.functions,javax.xml.transform.dom,org.apache.xpath.objects,org.w3c.dom.traversal,org.xml.sax,org.apache.xpath,org.xml.sax.ext,org.apache.xalan.templates,org.apache.xalan.extensions,javax.xml.transform.sax,org.apache.xalan.trace,org.apache.xml.utils,org.apache.xalan.res,org.apache.xml.dtm.ref,javax.xml.parsers,org.w3c.dom,org.apache.xpath.patterns,org.apache.xml.serializer,javax.xml.transform,javax.xml.transform.stream,org.xml.sax.helpers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.extensions'/>
    <p n='uses' v='org.apache.xpath.axes,org.apache.xml.dtm,org.apache.xalan.serialize,org.apache.xpath.functions,org.apache.xpath.objects,org.w3c.dom.traversal,javax.xml.namespace,org.xml.sax,org.apache.xpath,org.apache.xalan.templates,org.apache.xalan.transformer,org.apache.xml.utils,org.apache.xalan.trace,org.apache.xalan.res,org.apache.xml.dtm.ref,org.w3c.dom,javax.xml.xpath,org.apache.xml.serializer,javax.xml.transform'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.res'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.processor'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.xalan.res,javax.xml.parsers,javax.xml.transform.dom,org.w3c.dom,org.xml.sax,org.apache.xpath,javax.xml.transform,org.apache.xalan.templates,javax.xml.transform.stream,org.apache.xalan.transformer,org.apache.xalan.extensions,javax.xml.transform.sax,org.xml.sax.helpers,org.apache.xpath.compiler'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.xsltc.dom'/>
    <p n='uses' v='org.apache.xml.dtm.ref.sax2dtm,org.apache.xml.dtm,javax.xml.transform.dom,org.xml.sax,org.xml.sax.ext,javax.xml.transform.sax,org.apache.xml.res,org.apache.xml.utils,org.apache.xml.dtm.ref,javax.xml.parsers,org.apache.xalan.xsltc.trax,org.w3c.dom,org.apache.xalan.xsltc.util,org.apache.xalan.xsltc.runtime,org.apache.xml.serializer,org.apache.xalan.xsltc,javax.xml.transform,javax.xml.transform.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.xslt'/>
    <p n='uses' v='org.apache.xalan.trace,org.apache.xml.utils,org.apache.xalan.res,javax.xml.parsers,javax.xml.transform.dom,org.w3c.dom,org.xml.sax,org.apache.xalan,javax.xml.transform,javax.xml.transform.stream,org.apache.xalan.transformer,javax.xml.transform.sax,org.apache.xml.res,org.xml.sax.helpers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.utils'/>
    <p n='uses' v='org.apache.xml.dtm.ref.dom2dtm,org.apache.xml.dtm.ref,javax.xml.parsers,org.w3c.dom,org.xml.sax,org.xml.sax.ext,javax.xml.transform,javax.xml.transform.sax,org.apache.xml.res,org.xml.sax.helpers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.client'/>
    <p n='uses' v='org.apache.xalan.res,javax.xml.transform,javax.xml.transform.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.res'/>
    <p n='uses' v='org.apache.xpath.res,org.apache.xml.res'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xpath.jaxp'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.xpath.res,org.apache.xpath.functions,javax.xml.parsers,org.apache.xpath.objects,org.w3c.dom.traversal,org.w3c.dom,org.xml.sax,javax.xml.namespace,javax.xml.xpath,org.apache.xpath,javax.xml.transform'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.dtm.ref'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.xml.dtm.ref.sax2dtm,org.apache.xml.dtm,org.apache.xml.dtm.ref.dom2dtm,org.apache.xerces.parsers,javax.xml.parsers,javax.xml.transform.dom,org.w3c.dom.traversal,org.w3c.dom,org.xml.sax,org.apache.xpath,org.xml.sax.ext,javax.xml.transform,org.apache.xml.serialize,javax.xml.transform.stream,javax.xml.transform.sax,org.apache.xml.res,org.xml.sax.helpers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.bcel'/>
    <p n='uses' v='org.apache.bcel.classfile,org.apache.bcel.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.xsltc.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.xsltc.runtime'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.xml.dtm,org.apache.xml.dtm.ref,javax.xml.parsers,javax.xml.transform.dom,org.w3c.dom,org.xml.sax,org.apache.xalan.xsltc.runtime.output,org.apache.xml.serializer,org.apache.xalan.xsltc,javax.xml.transform,org.apache.xalan.xsltc.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xpath.domapi'/>
    <p n='uses' v='org.w3c.dom.xpath,org.apache.xml.utils,org.w3c.dom.events,org.apache.xpath.res,org.apache.xpath,javax.xml.transform,org.apache.xpath.objects,org.w3c.dom.traversal,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='trax'/>
    <p n='version' t='version' v='2.7.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.xsltc'/>
    <p n='uses' v='org.apache.xalan.xsltc.runtime,org.apache.xml.dtm,org.apache.xml.serializer,org.w3c.dom,org.xml.sax'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.xsltc.compiler.util'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.bcel.classfile,org.apache.bcel.generic,org.apache.xalan.xsltc.compiler'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.utils.res'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xpath.compiler'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.xpath.axes,org.apache.xpath.res,org.apache.xml.dtm,org.apache.xpath.functions,org.apache.xpath.objects,org.apache.xpath.domapi,org.apache.xpath.patterns,org.apache.xpath,javax.xml.transform,org.apache.xpath.operations,org.apache.xalan.templates'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.dtm.ref.sax2dtm'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.xml.serializer,org.apache.xml.dtm,org.xml.sax.ext,org.apache.xml.dtm.ref,javax.xml.transform,org.apache.xml.res,org.xml.sax'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.serialize'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.xml.dtm,org.apache.xml.serializer,org.apache.xpath,javax.xml.transform,org.apache.xalan.transformer,org.apache.xpath.objects,org.w3c.dom,org.xml.sax'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.xsltc.cmdline.getopt'/>
    <p n='uses' v='org.apache.xalan.xsltc.compiler.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.bcel.util'/>
    <p n='uses' v='org.apache.bcel.classfile,org.apache.bcel.generic,org.apache.bcel,org.apache.regexp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xpath.functions'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.xpath.axes,org.apache.xpath.res,org.apache.xml.dtm,org.apache.xalan.res,org.apache.xpath.objects,org.xml.sax,org.apache.xpath.patterns,org.apache.xpath,javax.xml.transform,org.apache.xalan.templates,org.apache.xalan.transformer,org.apache.xpath.compiler'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.xsltc.runtime.output'/>
    <p n='uses' v='org.apache.xml.serializer,org.xml.sax.ext,javax.xml.parsers,org.apache.xalan.xsltc.trax,org.w3c.dom,org.xml.sax'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xpath'/>
    <p n='uses' v='org.apache.xpath.axes,org.apache.xml.dtm.ref.sax2dtm,org.apache.xpath.res,org.apache.xml.dtm,org.apache.xpath.functions,org.apache.xpath.objects,org.w3c.dom.traversal,org.xml.sax,org.apache.xpath.operations,org.apache.xalan.templates,org.apache.xalan.extensions,javax.xml.transform.sax,org.apache.xml.utils,org.apache.xalan.res,org.apache.xml.dtm.ref,javax.xml.parsers,org.w3c.dom,org.apache.xpath.patterns,javax.xml.transform,javax.xml.transform.stream,org.xml.sax.helpers,org.apache.xpath.compiler'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.bcel.generic'/>
    <p n='uses' v='org.apache.bcel.classfile,org.apache.bcel.util,org.apache.bcel'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xpath.operations'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.xpath.axes,org.apache.xpath.res,org.apache.xml.dtm,org.apache.xpath,javax.xml.transform,org.apache.xalan.templates,org.apache.xpath.objects,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.templates'/>
    <p n='uses' v='org.apache.xpath.axes,org.apache.xml.dtm,org.apache.xalan.serialize,org.apache.xpath.functions,org.apache.xpath.objects,org.xml.sax,org.apache.xpath,org.apache.xpath.operations,org.apache.xalan.transformer,org.apache.xalan.extensions,org.apache.xalan.processor,org.apache.xml.utils,org.apache.xalan.trace,org.apache.xalan.res,org.apache.xml.dtm.ref,org.w3c.dom,org.apache.xpath.patterns,org.apache.xml.serializer,javax.xml.transform,org.xml.sax.helpers,org.apache.xpath.compiler,org.apache.xml.utils.res'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.xsltc.compiler'/>
    <p n='uses' v='org.apache.xml.utils,java_cup.runtime,org.apache.xml.dtm,org.apache.bcel.util,javax.xml.parsers,org.w3c.dom,org.xml.sax,org.apache.xalan.xsltc.runtime,org.apache.xml.serializer,org.apache.bcel.classfile,org.apache.bcel.generic,org.apache.xalan.xsltc.compiler.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.trace'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.xml.dtm,org.apache.xml.dtm.ref,org.apache.xpath.objects,org.w3c.dom,org.xml.sax,org.apache.xpath,javax.xml.transform,org.apache.xalan.templates,org.apache.xalan.transformer'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.dtm.ref.dom2dtm'/>
    <p n='uses' v='org.apache.xml.utils,org.apache.xml.dtm,org.xml.sax.ext,org.apache.xml.dtm.ref,javax.xml.transform,javax.xml.transform.dom,org.apache.xml.res,org.w3c.dom,org.xml.sax'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.bcel.verifier.statics'/>
    <p n='uses' v='org.apache.bcel.classfile,org.apache.bcel.verifier.exc,org.apache.bcel.generic,org.apache.bcel,org.apache.bcel.verifier'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.xsltc.trax'/>
    <p n='uses' v='org.apache.xml.dtm,javax.xml.transform.dom,org.xml.sax,org.apache.xalan.xsltc.runtime.output,org.xml.sax.ext,org.apache.xalan.xsltc.compiler,javax.xml.transform.sax,org.apache.xalan.xsltc.dom,org.apache.xml.utils,javax.xml.parsers,org.w3c.dom,org.apache.xalan.xsltc.runtime,org.apache.xml.serializer,org.apache.xalan.xsltc,javax.xml.transform,javax.xml.transform.stream,org.apache.xalan.xsltc.compiler.util,org.xml.sax.helpers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xalan.lib'/>
    <p n='uses' v='org.apache.xpath.axes,org.apache.xml.dtm,org.apache.xpath.objects,org.w3c.dom.traversal,org.xml.sax,org.apache.xpath,org.apache.xalan.templates,org.apache.xalan.extensions,org.apache.xalan.transformer,javax.xml.transform.sax,org.apache.xml.utils,org.apache.xalan.xslt,org.apache.xalan.res,org.apache.xml.dtm.ref,javax.xml.parsers,org.w3c.dom,org.apache.xml.serializer,javax.xml.transform,javax.xml.transform.stream,org.xml.sax.helpers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xpath.patterns'/>
    <p n='uses' v='org.apache.xpath.axes,org.apache.xml.dtm,org.apache.xpath,javax.xml.transform,org.apache.xpath.objects'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.bcel.classfile'/>
    <p n='uses' v='org.apache.bcel.util,org.apache.bcel'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.bcel.verifier.exc'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.regexp'/>
    <p n='uses' v='javax.swing'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=java_cup.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package java_cup.runtime
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.border)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.border
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.event
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.text)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.text
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.bcel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.bcel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.bcel.classfile)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.bcel.classfile
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.bcel.generic)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.bcel.generic
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.bcel.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.bcel.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.bcel.verifier)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.bcel.verifier
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.bcel.verifier.exc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.bcel.verifier.exc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.bcel.verifier.statics)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.bcel.verifier.statics
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.bcel.verifier.structurals)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.bcel.verifier.structurals
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.regexp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.regexp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.lib)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.lib
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.lib.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.lib.sql
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.processor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.processor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.res)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.res
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.serialize)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.serialize
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.templates)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.templates
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.trace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.trace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.transformer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.transformer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.xslt)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.xslt
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.xsltc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.xsltc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.xsltc.cmdline)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.xsltc.cmdline
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.xsltc.cmdline.getopt)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.xsltc.cmdline.getopt
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.xsltc.compiler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.xsltc.compiler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.xsltc.compiler.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.xsltc.compiler.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.xsltc.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.xsltc.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.xsltc.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.xsltc.runtime
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.xsltc.runtime.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.xsltc.runtime.output
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.xsltc.trax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.xsltc.trax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.xsltc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xalan.xsltc.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.dtm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.dtm
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.dtm.ref)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.dtm.ref
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.dtm.ref.dom2dtm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.dtm.ref.dom2dtm
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.dtm.ref.sax2dtm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.dtm.ref.sax2dtm
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.res)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.res
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.serialize)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.serialize
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.serializer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.serializer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.utils.res)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.utils.res
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath.axes)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath.axes
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath.compiler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath.compiler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath.domapi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath.domapi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath.functions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath.functions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath.objects)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath.objects
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath.operations)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath.operations
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath.patterns)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath.patterns
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath.res)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath.res
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.events)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.events
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=trax)(version&gt;=2.7.1))' multiple='false' name='package' optional='false'>
    Import package trax ;version=2.7.1
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.oscache/2.4.0.1' presentationname='Apache ServiceMix Bundles: oscache-2.4' symbolicname='org.apache.servicemix.bundles.oscache' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.oscache/2.4_1/org.apache.servicemix.bundles.oscache-2.4_1.jar' version='2.4.0.1'>
  <description>
    This bundle simply wraps oscache-2.4.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    142574
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: oscache-2.4'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.oscache'/>
    <p n='version' t='version' v='2.4.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.oscache.plugins.clustersupport'/>
    <p n='uses' v='org.jgroups.blocks,javax.naming,com.opensymphony.oscache.base.events,org.apache.commons.logging,org.jgroups,com.opensymphony.oscache.base,javax.jms'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.oscache.util'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.oscache.base'/>
    <p n='uses' v='org.apache.commons.logging,com.opensymphony.oscache.util,com.opensymphony.oscache.base.persistence,com.opensymphony.oscache.base.algorithm,javax.swing.event,com.opensymphony.oscache.base.events,com.opensymphony.oscache.web.filter'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.oscache.general'/>
    <p n='uses' v='org.apache.commons.logging,com.opensymphony.oscache.base'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.oscache.base.persistence'/>
    <p n='uses' v='com.opensymphony.oscache.base'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.oscache.base.algorithm'/>
    <p n='uses' v='com.opensymphony.oscache.base.persistence,org.apache.commons.logging,com.opensymphony.oscache.base'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.oscache.web'/>
    <p n='uses' v='javax.swing.event,javax.servlet.http,javax.servlet,com.opensymphony.oscache.base.events,org.apache.commons.logging,com.opensymphony.oscache.base'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.oscache.web.tag'/>
    <p n='uses' v='javax.servlet.http,com.opensymphony.oscache.web,javax.servlet,javax.servlet.jsp.tagext,org.apache.commons.logging,com.opensymphony.oscache.util,com.opensymphony.oscache.base,javax.servlet.jsp'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.oscache.hibernate'/>
    <p n='uses' v='org.hibernate.util,org.hibernate.cache,org.apache.commons.logging,com.opensymphony.oscache.util,com.opensymphony.oscache.base,com.opensymphony.oscache.general'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.oscache.extra'/>
    <p n='uses' v='com.opensymphony.oscache.base.events'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.oscache.base.events'/>
    <p n='uses' v='com.opensymphony.oscache.base'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.oscache.plugins.diskpersistence'/>
    <p n='uses' v='com.opensymphony.oscache.base.persistence,org.apache.commons.logging,com.opensymphony.oscache.base'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.oscache.web.filter'/>
    <p n='uses' v='javax.servlet.http,com.opensymphony.oscache.web,javax.servlet,org.apache.commons.logging,com.opensymphony.oscache.base,com.opensymphony.oscache.util'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.opensymphony.oscache.base)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.oscache.base ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.oscache.base.algorithm)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.oscache.base.algorithm ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.oscache.base.events)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.oscache.base.events ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.oscache.base.persistence)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.oscache.base.persistence ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.oscache.extra)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.oscache.extra ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.oscache.general)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.oscache.general ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.oscache.hibernate)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.oscache.hibernate ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.oscache.plugins.clustersupport)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.oscache.plugins.clustersupport
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.oscache.plugins.diskpersistence)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.oscache.plugins.diskpersistence
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.oscache.util)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.oscache.util ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.oscache.web)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.oscache.web ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.oscache.web.filter)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.oscache.web.filter ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.oscache.web.tag)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.oscache.web.tag ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.jsp
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.tagext)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.jsp.tagext
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.hibernate)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.hibernate
  </require>
  <require extend='false' filter='(&amp;(package=org.hibernate.cache)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.hibernate.cache
  </require>
  <require extend='false' filter='(&amp;(package=org.hibernate.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.hibernate.util
  </require>
  <require extend='false' filter='(&amp;(package=org.jgroups)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jgroups
  </require>
  <require extend='false' filter='(&amp;(package=org.jgroups.blocks)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jgroups.blocks
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.howl-1.0.1-1/4.0.0.m1' presentationname='Apache ServiceMix OSGI Common Bundles: howl' symbolicname='org.apache.servicemix.bundles.howl-1.0.1-1' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.howl-1.0.1-1/4.0-m1/org.apache.servicemix.bundles.howl-1.0.1-1-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    This bundle simply wraps howl-1.0.1-1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    82393
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: howl'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.howl-1.0.1-1'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.howl.log.util'/>
    <p n='version' t='version' v='1.0.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.howl.log'/>
    <p n='version' t='version' v='1.0.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.howl.log.xa'/>
    <p n='uses' v='org.objectweb.howl.log'/>
    <p n='version' t='version' v='1.0.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.objectweb.howl.log)(version&gt;=1.0.1.1))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.howl.log ;version=1.0.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.howl.log.util)(version&gt;=1.0.1.1))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.howl.log.util ;version=1.0.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.howl.log.xa)(version&gt;=1.0.1.1))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.howl.log.xa ;version=1.0.1.1
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.flatpack/3.1.1.1' presentationname='Apache ServiceMix Bundles: flatpack-3.1.1' symbolicname='org.apache.servicemix.bundles.flatpack' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.flatpack/3.1.1_1/org.apache.servicemix.bundles.flatpack-3.1.1_1.jar' version='3.1.1.1'>
  <description>
    This bundle simply wraps flatpack-3.1.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    77690
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: flatpack-3.1.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.flatpack'/>
    <p n='version' t='version' v='3.1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.flatpack.writer'/>
    <p n='uses' v='net.sf.flatpack,net.sf.flatpack.structure,net.sf.flatpack.xml,org.jdom'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.flatpack'/>
    <p n='uses' v='net.sf.flatpack.structure,net.sf.flatpack.xml,net.sf.flatpack.ordering,org.slf4j,net.sf.flatpack.util,org.jdom'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.flatpack.xml'/>
    <p n='uses' v='net.sf.flatpack,net.sf.flatpack.structure,org.jdom.input,org.xml.sax,org.slf4j,net.sf.flatpack.util,org.jdom'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.flatpack.structure'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.flatpack.ordering'/>
    <p n='uses' v='net.sf.flatpack.structure,net.sf.flatpack.util'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.flatpack.util'/>
    <p n='uses' v='net.sf.flatpack.structure,jxl.format,jxl.write,jxl,net.sf.flatpack.converter,net.sf.flatpack,net.sf.flatpack.xml'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.flatpack.brparse'/>
    <p n='uses' v='net.sf.flatpack,net.sf.flatpack.xml,net.sf.flatpack.structure,net.sf.flatpack.ordering,org.slf4j,net.sf.flatpack.util'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.flatpack.converter'/>
    <p n='uses' v='net.sf.flatpack.util'/>
    <p n='version' t='version' v='3.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=jxl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package jxl
  </require>
  <require extend='false' filter='(&amp;(package=jxl.format)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package jxl.format
  </require>
  <require extend='false' filter='(&amp;(package=jxl.write)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package jxl.write
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.flatpack)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.flatpack ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.flatpack.brparse)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.flatpack.brparse ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.flatpack.converter)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.flatpack.converter ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.flatpack.ordering)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.flatpack.ordering ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.flatpack.structure)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.flatpack.structure ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.flatpack.util)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.flatpack.util ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.flatpack.writer)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.flatpack.writer ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.flatpack.xml)(version&gt;=3.1.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.flatpack.xml ;version=3.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.werken-xpath/0.9.4.1' presentationname='Apache ServiceMix Bundles: werken-xpath-0.9.4' symbolicname='org.apache.servicemix.bundles.werken-xpath' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.werken-xpath/0.9.4_1/org.apache.servicemix.bundles.werken-xpath-0.9.4_1.jar' version='0.9.4.1'>
  <description>
    This bundle simply wraps werken-xpath-0.9.4.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    83624
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: werken-xpath-0.9.4'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.werken-xpath'/>
    <p n='version' t='version' v='0.9.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.werken.xpath'/>
    <p n='uses' v='org.jdom.input,com.werken.xpath.function,com.werken.xpath.impl,org.jdom,com.werken.xpath.parser,antlr'/>
    <p n='version' t='version' v='0.9.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.werken.xpath.function'/>
    <p n='uses' v='com.werken.xpath.impl,org.jdom'/>
    <p n='version' t='version' v='0.9.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.werken.xpath.impl'/>
    <p n='uses' v='com.werken.xpath,com.werken.xpath.function,com.werken.xpath.util,org.jdom'/>
    <p n='version' t='version' v='0.9.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.werken.xpath.util'/>
    <p n='uses' v='org.jdom'/>
    <p n='version' t='version' v='0.9.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.werken.xpath.parser'/>
    <p n='uses' v='com.werken.xpath.impl,antlr.collections.impl,antlr'/>
    <p n='version' t='version' v='0.9.4'/>
  </capability>
  <require extend='false' filter='(&amp;(package=antlr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package antlr
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package antlr.collections.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.werken.xpath)(version&gt;=0.9.4))' multiple='false' name='package' optional='false'>
    Import package com.werken.xpath ;version=0.9.4
  </require>
  <require extend='false' filter='(&amp;(package=com.werken.xpath.function)(version&gt;=0.9.4))' multiple='false' name='package' optional='false'>
    Import package com.werken.xpath.function ;version=0.9.4
  </require>
  <require extend='false' filter='(&amp;(package=com.werken.xpath.impl)(version&gt;=0.9.4))' multiple='false' name='package' optional='false'>
    Import package com.werken.xpath.impl ;version=0.9.4
  </require>
  <require extend='false' filter='(&amp;(package=com.werken.xpath.parser)(version&gt;=0.9.4))' multiple='false' name='package' optional='false'>
    Import package com.werken.xpath.parser ;version=0.9.4
  </require>
  <require extend='false' filter='(&amp;(package=com.werken.xpath.util)(version&gt;=0.9.4))' multiple='false' name='package' optional='false'>
    Import package com.werken.xpath.util ;version=0.9.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.input
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jsch/0.1.31.1' presentationname='Apache ServiceMix Bundles: jsch-0.1.31' symbolicname='org.apache.servicemix.bundles.jsch' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsch/0.1.31_1/org.apache.servicemix.bundles.jsch-0.1.31_1.jar' version='0.1.31.1'>
  <description>
    This bundle simply wraps jsch-0.1.31.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    179198
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: jsch-0.1.31'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jsch'/>
    <p n='version' t='version' v='0.1.31.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.jcraft.jsch.jcraft'/>
    <p n='uses' v='com.jcraft.jzlib,com.jcraft.jsch'/>
    <p n='version' t='version' v='0.1.31'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.jcraft.jsch'/>
    <p n='version' t='version' v='0.1.31'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.jcraft.jsch.jce'/>
    <p n='uses' v='javax.crypto.interfaces,com.jcraft.jsch,javax.crypto.spec,javax.crypto'/>
    <p n='version' t='version' v='0.1.31'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.jcraft.jsch)(version&gt;=0.1.31))' multiple='false' name='package' optional='false'>
    Import package com.jcraft.jsch ;version=0.1.31
  </require>
  <require extend='false' filter='(&amp;(package=com.jcraft.jsch.jce)(version&gt;=0.1.31))' multiple='false' name='package' optional='false'>
    Import package com.jcraft.jsch.jce ;version=0.1.31
  </require>
  <require extend='false' filter='(&amp;(package=com.jcraft.jsch.jcraft)(version&gt;=0.1.31))' multiple='false' name='package' optional='false'>
    Import package com.jcraft.jsch.jcraft ;version=0.1.31
  </require>
  <require extend='false' filter='(&amp;(package=com.jcraft.jzlib)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.jcraft.jzlib
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto.interfaces)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto.interfaces
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto.spec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto.spec
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jetty-cometd/6.1.11.1' presentationname='Apache ServiceMix Bundles: cometd-bayeux-6.1.11' symbolicname='org.apache.servicemix.bundles.jetty-cometd' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jetty-cometd/6.1.11_1/org.apache.servicemix.bundles.jetty-cometd-6.1.11_1.jar' version='6.1.11.1'>
  <description>
    This bundle simply wraps cometd-bayeux-6.1.11.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    84227
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: cometd-bayeux-6.1.11'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jetty-cometd'/>
    <p n='version' t='version' v='6.1.11.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='dojox.cometd'/>
    <p n='version' t='version' v='6.1.11'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.cometd'/>
    <p n='uses' v='dojox.cometd,org.mortbay.log,javax.servlet,org.mortbay.util.ajax,org.mortbay.cometd.filter,org.mortbay.util,javax.servlet.http'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.cometd.continuation'/>
    <p n='uses' v='dojox.cometd,org.mortbay.cometd,javax.servlet,org.mortbay.util.ajax,org.mortbay.thread,javax.servlet.http'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.cometd.ext'/>
    <p n='uses' v='dojox.cometd,org.mortbay.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.cometd.filter'/>
    <p n='uses' v='dojox.cometd,org.mortbay.log,org.mortbay.util.ajax,org.mortbay.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=dojox.cometd)(version&gt;=6.1.11))' multiple='false' name='package' optional='false'>
    Import package dojox.cometd ;version=6.1.11
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.cometd)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.cometd
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.cometd.continuation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.cometd.continuation
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.cometd.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.cometd.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.cometd.filter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.cometd.filter
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.log)(version&gt;=6.1.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.log ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util)(version&gt;=6.1.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.util ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.util.ajax ;version=6.1.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jencks-2.1/4.0.0.m1' presentationname='Apache ServiceMix OSGI Common Bundles: jencks' symbolicname='org.apache.servicemix.bundles.jencks-2.1' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jencks-2.1/4.0-m1/org.apache.servicemix.bundles.jencks-2.1-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    This bundle simply wraps jencks-2.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    65713
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: jencks'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jencks-2.1'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jencks.interceptor'/>
    <p n='uses' v='javax.servlet,javax.resource,org.apache.commons.logging,org.apache.geronimo.connector.outbound.connectiontracking,org.springframework.beans.factory,org.aopalliance.intercept'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jencks.pool'/>
    <p n='uses' v='org.springframework.transaction.jta,org.apache.commons.pool.impl,org.apache.commons.pool,org.apache.commons.logging,javax.transaction.xa,javax.transaction,org.springframework.transaction.support,javax.jms'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jencks'/>
    <p n='uses' v='org.apache.geronimo.transaction.manager,org.springframework.transaction.jta,javax.resource.spi,javax.resource.spi.work,org.apache.commons.logging,javax.transaction.xa,org.springframework.context,org.springframework.aop,javax.resource.spi.endpoint,org.apache.geronimo.connector.work,org.springframework.transaction,javax.resource,org.springframework.beans,javax.transaction,org.jencks.factory,org.springframework.beans.factory,javax.jms,org.springframework.transaction.support'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jencks.tranql'/>
    <p n='uses' v='org.enhydra.jdbc.standard,org.tranql.connector.jdbc,org.tranql.connector,javax.sql'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jencks.factory'/>
    <p n='uses' v='org.apache.geronimo.transaction.manager,org.jencks,javax.resource.spi,javax.resource.spi.work,org.apache.geronimo.transaction.log,org.apache.geronimo.connector.outbound.connectionmanagerconfig,org.apache.geronimo.connector.work,javax.resource,org.springframework.beans,org.apache.geronimo.connector.outbound.connectiontracking,org.springframework.beans.factory,org.apache.geronimo.connector.outbound,org.apache.geronimo.connector'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.endpoint)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.endpoint ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.work)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.resource.spi.work ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.intercept)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.aopalliance.intercept
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.pool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.pool.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound.connectionmanagerconfig)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound.connectionmanagerconfig
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.outbound.connectiontracking)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.outbound.connectiontracking
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.connector.work)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.connector.work
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.transaction.log
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.manager)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.transaction.manager
  </require>
  <require extend='false' filter='(&amp;(package=org.enhydra.jdbc.standard)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.enhydra.jdbc.standard
  </require>
  <require extend='false' filter='(&amp;(package=org.jencks)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.jencks ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jencks.factory)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.jencks.factory ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jencks.interceptor)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.jencks.interceptor ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jencks.pool)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.jencks.pool ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jencks.tranql)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.jencks.tranql ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.aop ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.jta)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.jta
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.support
  </require>
  <require extend='false' filter='(&amp;(package=org.tranql.connector)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.tranql.connector
  </require>
  <require extend='false' filter='(&amp;(package=org.tranql.connector.jdbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.tranql.connector.jdbc
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.hamcrest/1.2.0.dev1_1' presentationname='Apache ServiceMix Bundles: hamcrest-all-1.2-dev1' symbolicname='org.apache.servicemix.bundles.hamcrest' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.hamcrest/1.2-dev1_1/org.apache.servicemix.bundles.hamcrest-1.2-dev1_1.jar' version='1.2.0.dev1_1'>
  <description>
    This bundle simply wraps hamcrest-all-1.2-dev1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    212802
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: hamcrest-all-1.2-dev1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.hamcrest'/>
    <p n='version' t='version' v='1.2.0.dev1_1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.ant'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant,org.hamcrest.generator.qdox,org.hamcrest.generator.qdox.model'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.core'/>
    <p n='uses' v='org.hamcrest'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest'/>
    <p n='uses' v='org.hamcrest.core,org.easymock,org.hamcrest.text,org.hamcrest.internal,javax.xml.namespace,org.hamcrest.number,org.hamcrest.xml,org.jmock.core,org.hamcrest.integration,org.hamcrest.collection,org.hamcrest.object,org.hamcrest.beans'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.parser'/>
    <p n='uses' v='org.hamcrest.generator.qdox.parser.structs'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.text'/>
    <p n='uses' v='org.hamcrest'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.internal'/>
    <p n='uses' v='org.hamcrest'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox'/>
    <p n='uses' v='org.hamcrest.generator.qdox.parser.structs,org.hamcrest.generator.qdox.parser,org.hamcrest.generator.qdox.parser.impl,org.hamcrest.generator.qdox.directorywalker,org.hamcrest.generator.qdox.model'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.tools'/>
    <p n='uses' v='org.hamcrest.generator.qdox.parser,org.hamcrest.generator.qdox,org.hamcrest.generator.qdox.directorywalker,org.hamcrest.generator.qdox.model'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.number'/>
    <p n='uses' v='org.hamcrest'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.xml'/>
    <p n='uses' v='org.hamcrest,javax.xml.namespace,org.w3c.dom,javax.xml.xpath'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.integration'/>
    <p n='uses' v='org.hamcrest,org.easymock,org.jmock.core'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator'/>
    <p n='uses' v='org.hamcrest.generator.qdox,org.hamcrest.generator.qdox.model'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.collection'/>
    <p n='uses' v='org.hamcrest.core,org.hamcrest'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.parser.structs'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.parser.impl'/>
    <p n='uses' v='org.hamcrest.generator.qdox.parser.structs,org.hamcrest.generator.qdox.parser'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.object'/>
    <p n='uses' v='org.hamcrest.core,org.hamcrest'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.model.util'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.directorywalker'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.model'/>
    <p n='uses' v='org.hamcrest.generator.qdox.parser.structs,org.hamcrest.generator.qdox.parser,org.hamcrest.generator.qdox.model.util'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.config'/>
    <p n='uses' v='org.xml.sax,javax.xml.parsers,org.xml.sax.helpers,org.hamcrest.generator'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.beans'/>
    <p n='uses' v='org.hamcrest'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.junit'/>
    <p n='uses' v='org.hamcrest.generator.qdox,junit.framework,org.hamcrest.generator.qdox.model'/>
    <p n='version' t='version' v='1.2.0.dev1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.easymock)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.easymock
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.beans)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.beans ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.collection)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.collection ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.core)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.core ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.config)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.config ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.ant)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.ant ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.directorywalker)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.directorywalker
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.junit)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.junit ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.model)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.model ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.model.util)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.model.util ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.parser)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.parser ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.parser.impl)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.parser.impl ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.parser.structs)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.parser.structs ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.tools)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.tools ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.integration)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.integration ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.internal)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.internal ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.number)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.number ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.object)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.object ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.text)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.text ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.xml)(version&gt;=1.2.0.dev1))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.xml ;version=1.2.0.dev1
  </require>
  <require extend='false' filter='(&amp;(package=org.jmock.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jmock.core
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.hamcrest/1.1.0.1' presentationname='Apache ServiceMix Bundles: hamcrest-all-1.1' symbolicname='org.apache.servicemix.bundles.hamcrest' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.hamcrest/1.1_1/org.apache.servicemix.bundles.hamcrest-1.1_1.jar' version='1.1.0.1'>
  <description>
    This bundle simply wraps hamcrest-all-1.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    198580
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: hamcrest-all-1.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.hamcrest'/>
    <p n='version' t='version' v='1.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.ant'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant,org.hamcrest.generator.qdox,org.hamcrest.generator.qdox.model'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.tools'/>
    <p n='uses' v='org.hamcrest.generator.qdox.parser,org.hamcrest.generator.qdox,org.hamcrest.generator.qdox.directorywalker,org.hamcrest.generator.qdox.model'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.xml'/>
    <p n='uses' v='org.hamcrest,javax.xml.namespace,org.w3c.dom,javax.xml.xpath'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.text.pattern'/>
    <p n='uses' v='org.hamcrest,org.hamcrest.text.pattern.internal.naming,org.hamcrest.text.pattern.internal.ast'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.collection'/>
    <p n='uses' v='org.hamcrest.core,org.hamcrest'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.parser.structs'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.parser.impl'/>
    <p n='uses' v='org.hamcrest.generator.qdox.parser.structs,org.hamcrest.generator.qdox.parser'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.model.util'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.object'/>
    <p n='uses' v='org.hamcrest'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.config'/>
    <p n='uses' v='org.xml.sax,javax.xml.parsers,org.xml.sax.helpers,org.hamcrest.generator'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.beans'/>
    <p n='uses' v='org.hamcrest'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.junit'/>
    <p n='uses' v='org.hamcrest.generator.qdox,junit.framework,org.hamcrest.generator.qdox.model'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest'/>
    <p n='uses' v='org.hamcrest.core,org.easymock,org.hamcrest.text,org.hamcrest.internal,org.hamcrest.number,org.hamcrest.xml,org.jmock.core,org.hamcrest.integration,org.hamcrest.collection,org.hamcrest.object,org.hamcrest.beans'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.core'/>
    <p n='uses' v='org.hamcrest'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.text'/>
    <p n='uses' v='org.hamcrest'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.parser'/>
    <p n='uses' v='org.hamcrest.generator.qdox.parser.structs'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.internal'/>
    <p n='uses' v='org.hamcrest'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox'/>
    <p n='uses' v='org.hamcrest.generator.qdox.parser.structs,org.hamcrest.generator.qdox.parser,org.hamcrest.generator.qdox.parser.impl,org.hamcrest.generator.qdox.directorywalker,org.hamcrest.generator.qdox.model'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.number'/>
    <p n='uses' v='org.hamcrest.core,org.hamcrest'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.integration'/>
    <p n='uses' v='org.hamcrest,org.easymock,org.jmock.core'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator'/>
    <p n='uses' v='org.hamcrest.generator.qdox,org.hamcrest.generator.qdox.model'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.directorywalker'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.generator.qdox.model'/>
    <p n='uses' v='org.hamcrest.generator.qdox.parser.structs,org.hamcrest.generator.qdox.parser,org.hamcrest.generator.qdox.model.util'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.text.pattern.internal.naming'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.hamcrest.text.pattern.internal.ast'/>
    <p n='uses' v='org.hamcrest.text.pattern.internal.naming,org.hamcrest.text.pattern'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.easymock)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.easymock
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.beans)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.beans ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.collection)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.collection ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.core)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.core ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.config)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.config ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.ant)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.ant ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.directorywalker)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.directorywalker
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.junit)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.junit ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.model)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.model ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.model.util)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.model.util ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.parser)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.parser ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.parser.impl)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.parser.impl ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.parser.structs)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.parser.structs ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.generator.qdox.tools)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.generator.qdox.tools ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.integration)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.integration ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.internal)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.internal ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.number)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.number ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.object)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.object ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.text)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.text ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.text.pattern)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.text.pattern ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.text.pattern.internal.ast)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.text.pattern.internal.ast ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.text.pattern.internal.naming)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.text.pattern.internal.naming ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.xml)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.hamcrest.xml ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jmock.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jmock.core
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.saaj-impl-1.3/4.0.0.m1' presentationname='Apache ServiceMix OSGI Common Bundles: saaj-impl' symbolicname='org.apache.servicemix.bundles.saaj-impl-1.3' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.saaj-impl-1.3/4.0-m1/org.apache.servicemix.bundles.saaj-impl-1.3-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    This bundle simply wraps saaj-impl-1.3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    285209
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: saaj-impl'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.saaj-impl-1.3'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.packaging.mime'/>
    <p n='uses' v='javax.activation,com.sun.xml.messaging.saaj.packaging.mime.internet'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.soap.name'/>
    <p n='uses' v='javax.xml.soap,com.sun.org.apache.xerces.internal.xni,javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.packaging.mime.internet'/>
    <p n='uses' v='com.sun.xml.messaging.saaj.packaging.mime,javax.activation,com.sun.xml.messaging.saaj.util,com.sun.xml.messaging.saaj.packaging.mime.util'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.client.p2p'/>
    <p n='uses' v='javax.xml.soap,com.sun.xml.messaging.saaj.util,com.sun.xml.messaging.saaj'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.soap.ver1_2'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,com.sun.xml.messaging.saaj.soap.name,com.sun.xml.messaging.saaj.packaging.mime.internet,javax.xml.transform,javax.xml.soap,com.sun.xml.messaging.saaj.soap.impl,com.sun.xml.messaging.saaj.soap,com.sun.xml.messaging.saaj.util,com.sun.xml.messaging.saaj'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.soap.impl'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.jaxp,javax.xml.namespace,org.w3c.dom,com.sun.xml.messaging.saaj.soap.name,com.sun.org.apache.xerces.internal.dom,javax.xml.transform,javax.xml.transform.dom,com.sun.xml.messaging.saaj.soap.ver1_2,javax.xml.soap,com.sun.xml.messaging.saaj.util.transform,com.sun.xml.messaging.saaj.soap,com.sun.org.apache.xerces.internal.xni,javax.xml.parsers,com.sun.xml.messaging.saaj.util,javax.xml.transform.stream,com.sun.xml.messaging.saaj.soap.ver1_1,com.sun.xml.messaging.saaj'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.util.transform'/>
    <p n='uses' v='javax.xml.transform.dom,com.sun.org.apache.xalan.internal.xsltc.trax,org.w3c.dom,com.sun.xml.messaging.saaj.util,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.soap'/>
    <p n='uses' v='javax.xml.namespace,com.sun.xml.messaging.saaj.packaging.mime,com.sun.xml.messaging.saaj.soap.name,com.sun.org.apache.xerces.internal.dom,javax.xml.transform,com.sun.xml.messaging.saaj.util.transform,javax.xml.parsers,com.sun.xml.messaging.saaj.util,com.sun.xml.messaging.saaj.soap.ver1_1,javax.xml.transform.stream,com.sun.xml.messaging.saaj.soap.dynamic,com.sun.image.codec.jpeg,org.xml.sax,javax.imageio,javax.activation,org.w3c.dom,com.sun.xml.messaging.saaj.packaging.mime.internet,com.sun.xml.messaging.saaj.soap.ver1_2,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,javax.xml.transform.sax,com.sun.xml.messaging.saaj.soap.impl,com.sun.xml.messaging.saaj.packaging.mime.util,com.sun.xml.messaging.saaj'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.util'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.jaxp,org.xml.sax,com.sun.xml.fastinfoset.dom,org.w3c.dom,javax.xml.transform,javax.xml.soap,org.jvnet.fastinfoset,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.parsers,javax.xml.transform.stream,com.sun.xml.messaging.saaj'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.packaging.mime.util'/>
    <p n='uses' v='com.sun.xml.messaging.saaj.util'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.soap.ver1_1'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,com.sun.xml.messaging.saaj.soap.name,com.sun.xml.messaging.saaj.packaging.mime.internet,javax.xml.transform,javax.xml.soap,com.sun.xml.messaging.saaj.soap.impl,com.sun.xml.messaging.saaj.soap,com.sun.xml.messaging.saaj.util,com.sun.xml.messaging.saaj'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj.soap.dynamic'/>
    <p n='uses' v='javax.xml.soap,com.sun.xml.messaging.saaj.soap'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.messaging.saaj'/>
    <p n='uses' v='javax.xml.soap'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.image.codec.jpeg)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.image.codec.jpeg
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.trax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.trax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.dom
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.xni)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.xni
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.dom
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.client.p2p)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.client.p2p ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.packaging.mime)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.packaging.mime ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.packaging.mime.internet)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.packaging.mime.internet
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.packaging.mime.util)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.packaging.mime.util
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap.dynamic)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.soap.dynamic ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap.impl)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.soap.impl ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap.name)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.soap.name ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap.ver1_1)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.soap.ver1_1 ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap.ver1_2)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.soap.ver1_2 ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.util)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.util ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.util.transform)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.messaging.saaj.util.transform ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.jvnet.fastinfoset)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jvnet.fastinfoset
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.commons-jxpath/1.2.0.1' presentationname='Apache ServiceMix Bundles: commons-jxpath-1.2' symbolicname='org.apache.servicemix.bundles.commons-jxpath' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-jxpath/1.2_1/org.apache.servicemix.bundles.commons-jxpath-1.2_1.jar' version='1.2.0.1'>
  <description>
    This bundle simply wraps commons-jxpath-1.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    289729
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: commons-jxpath-1.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.commons-jxpath'/>
    <p n='version' t='version' v='1.2.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jxpath.ri.axes'/>
    <p n='uses' v='org.apache.commons.jxpath.ri.compiler,org.apache.commons.jxpath.ri.model,org.apache.commons.jxpath.ri.model.beans,org.apache.commons.jxpath.ri,org.apache.commons.jxpath'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jxpath.ri.model.dynamic'/>
    <p n='uses' v='org.apache.commons.jxpath.util,org.apache.commons.jxpath.ri.model,org.apache.commons.jxpath.ri.model.beans,org.apache.commons.jxpath.ri,org.apache.commons.jxpath'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jxpath.util'/>
    <p n='uses' v='org.apache.commons.beanutils,org.apache.commons.jxpath'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jxpath.ri.model.dom'/>
    <p n='uses' v='org.apache.commons.jxpath.ri.compiler,org.apache.commons.jxpath.util,org.apache.commons.jxpath.ri.model,org.apache.commons.jxpath.ri.model.beans,org.apache.commons.jxpath.ri,org.w3c.dom,org.apache.commons.jxpath'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jxpath.servlet'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.commons.jxpath,javax.servlet.jsp'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jxpath.ri.model.container'/>
    <p n='uses' v='org.apache.commons.jxpath.ri.compiler,org.apache.commons.jxpath.util,org.apache.commons.jxpath.ri.model,org.apache.commons.jxpath.ri,org.apache.commons.jxpath'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jxpath.ri.model.beans'/>
    <p n='uses' v='org.apache.commons.jxpath.ri.compiler,org.apache.commons.jxpath.util,org.apache.commons.jxpath.ri.model,org.apache.commons.jxpath.ri,org.apache.commons.jxpath'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jxpath.ri'/>
    <p n='uses' v='org.apache.commons.jxpath.ri.axes,org.apache.commons.jxpath.ri.model.dynamic,org.apache.commons.jxpath.util,org.apache.commons.jxpath.ri.model.beans,org.apache.commons.jxpath.ri.model.container,org.apache.commons.jxpath.ri.parser,org.apache.commons.jxpath.ri.compiler,org.apache.commons.jxpath.ri.model,org.apache.commons.jxpath'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jxpath.functions'/>
    <p n='uses' v='org.apache.commons.jxpath.util,org.apache.commons.jxpath'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jxpath.ri.parser'/>
    <p n='uses' v='org.apache.commons.jxpath.ri'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jxpath.ri.compiler'/>
    <p n='uses' v='org.apache.commons.jxpath.ri.axes,org.apache.commons.jxpath.util,org.apache.commons.jxpath.ri.model,org.apache.commons.jxpath.ri,org.apache.commons.jxpath'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jxpath.ri.model'/>
    <p n='uses' v='org.apache.commons.jxpath.ri.compiler,org.apache.commons.jxpath.util,org.apache.commons.jxpath.ri.model.beans,org.apache.commons.jxpath.ri,org.apache.commons.jxpath'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jxpath.ri.model.jdom'/>
    <p n='uses' v='org.apache.commons.jxpath.ri.compiler,org.apache.commons.jxpath.util,org.apache.commons.jxpath.ri.model,org.apache.commons.jxpath.ri,org.apache.commons.jxpath,org.jdom'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jxpath'/>
    <p n='uses' v='org.apache.commons.jxpath.util,org.apache.commons.jxpath.functions,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.commons.jxpath.xml'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jxpath.xml'/>
    <p n='uses' v='org.jdom.input,javax.xml.parsers,org.w3c.dom,org.apache.commons.jxpath,org.jdom'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jxpath.ri.model.dynabeans'/>
    <p n='uses' v='org.apache.commons.beanutils,org.apache.commons.jxpath.util,org.apache.commons.jxpath.ri.model,org.apache.commons.jxpath.ri.model.beans,org.apache.commons.jxpath.ri,org.apache.commons.jxpath'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.jsp
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.beanutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.beanutils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath.functions)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath.functions ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath.ri)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath.ri ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath.ri.axes)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath.ri.axes ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath.ri.compiler)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath.ri.compiler ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath.ri.model)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath.ri.model ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath.ri.model.beans)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath.ri.model.beans ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath.ri.model.container)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath.ri.model.container
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath.ri.model.dom)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath.ri.model.dom ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath.ri.model.dynabeans)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath.ri.model.dynabeans
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath.ri.model.dynamic)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath.ri.model.dynamic ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath.ri.model.jdom)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath.ri.model.jdom ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath.ri.parser)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath.ri.parser ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath.servlet)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath.servlet ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath.util)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath.util ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jxpath.xml)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jxpath.xml ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jasper/6.0.14.1' presentationname='Apache ServiceMix Bundles: jasper-6.0.14' symbolicname='org.apache.servicemix.bundles.jasper' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jasper/6.0.14_1/org.apache.servicemix.bundles.jasper-6.0.14_1.jar' version='6.0.14.1'>
  <description>
    This bundle simply wraps jasper-6.0.14.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    521327
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: jasper-6.0.14'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jasper'/>
    <p n='version' t='version' v='6.0.14.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.el'/>
    <p n='uses' v='javax.servlet.jsp.el,javax.el'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.tagplugins.jstl'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.servlet.jsp'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.resources'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.util'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.tagplugins.jstl.core'/>
    <p n='uses' v='org.apache.jasper.tagplugins.jstl,org.apache.jasper.compiler.tagplugin'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.tools.ant,javax.servlet.jsp.tagext,javax.servlet,org.apache.tools.ant.util,org.apache.jasper.xmlparser,org.apache.jasper.compiler,org.apache.jasper.servlet'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache'/>
    <p n='uses' v='javax.naming'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.runtime'/>
    <p n='uses' v='org.apache.juli.logging,javax.servlet.http,org.apache.jasper.el,javax.servlet.jsp.tagext,org.apache.jasper.util,javax.servlet.jsp.el,org.apache.el,javax.servlet.jsp,org.apache.jasper,javax.naming,javax.servlet,org.apache,org.apache.jasper.security,javax.el,org.apache.jasper.compiler'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.compiler.tagplugin'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.security'/>
    <p n='uses' v='org.apache.jasper,org.apache.juli.logging'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.xmlparser'/>
    <p n='uses' v='org.apache.jasper,org.apache.juli.logging,org.xml.sax,javax.xml.parsers,org.w3c.dom,org.apache.jasper.compiler'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.compiler'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,javax.servlet.jsp.tagext,org.eclipse.jdt.internal.compiler,org.apache.el.lang,javax.servlet,org.apache.jasper.runtime,org.eclipse.jdt.internal.compiler.problem,javax.xml.parsers,org.apache.jasper.compiler.tagplugin,org.apache.jasper.xmlparser,org.apache.jasper.el,org.apache.juli.logging,org.xml.sax,org.apache.tools.ant,org.eclipse.jdt.internal.compiler.classfmt,javax.servlet.jsp.el,org.apache.el,javax.servlet.jsp,org.apache.jasper,org.xml.sax.ext,org.xml.sax.helpers,org.eclipse.jdt.core.compiler,org.apache.jasper.security,javax.el,org.apache.jasper.servlet'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.servlet'/>
    <p n='uses' v='org.apache.juli.logging,javax.servlet.http,javax.servlet.jsp.tagext,org.apache.jasper,javax.servlet,org.apache,org.apache.jasper.runtime,org.apache.jasper.compiler'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.el)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.el
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.jsp
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.el)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.jsp.el
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.resources)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.jsp.resources
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.tagext)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.jsp.tagext
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.el)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.el
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.el.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.el.lang
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.compiler)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.compiler ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.compiler.tagplugin)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.compiler.tagplugin ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.el)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.el ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.resources)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.resources ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.runtime)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.runtime ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.security)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.security ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.servlet)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.servlet ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.tagplugins.jstl)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.tagplugins.jstl ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.tagplugins.jstl.core)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.tagplugins.jstl.core ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.util)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.util ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.xmlparser)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.xmlparser ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.juli.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.juli.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.util
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.core.compiler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.jdt.core.compiler
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.jdt.internal.compiler
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.classfmt)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.jdt.internal.compiler.classfmt
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.env)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.jdt.internal.compiler.env
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.problem)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.jdt.internal.compiler.problem
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.wsdl4j/1.6.1.1' presentationname='Apache ServiceMix Bundles: wsdl4j-1.6.1' symbolicname='org.apache.servicemix.bundles.wsdl4j' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.wsdl4j/1.6.1_1/org.apache.servicemix.bundles.wsdl4j-1.6.1_1.jar' version='1.6.1.1'>
  <description>
    This bundle simply wraps wsdl4j-1.6.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    159204
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: wsdl4j-1.6.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.wsdl4j'/>
    <p n='version' t='version' v='1.6.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.namespace'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.extensions.mime'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,com.ibm.wsdl,javax.xml.namespace,org.w3c.dom,javax.wsdl.extensions.mime,com.ibm.wsdl.util.xml'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl.xml'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.xml.sax,org.w3c.dom'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.extensions.soap'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions.soap,com.ibm.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util,com.ibm.wsdl.util.xml,javax.wsdl.extensions,javax.wsdl.extensions.mime'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.util'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.util.xml'/>
    <p n='uses' v='javax.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl.extensions.soap12'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.namespace'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.xml'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,javax.wsdl.xml,com.ibm.wsdl,javax.xml.namespace,com.ibm.wsdl.util,org.w3c.dom,com.ibm.wsdl.util.xml,javax.wsdl.extensions,javax.wsdl.factory,javax.xml.parsers,javax.wsdl.extensions.schema,com.ibm.wsdl.extensions.schema'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.factory'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.factory,javax.wsdl.xml,com.ibm.wsdl.extensions,com.ibm.wsdl,com.ibm.wsdl.xml'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl.extensions'/>
    <p n='uses' v='javax.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util.xml'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl.extensions.http'/>
    <p n='uses' v='javax.wsdl.extensions'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl.factory'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.xml'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.extensions'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.mime,com.ibm.wsdl.extensions.soap,javax.xml.namespace,javax.wsdl.extensions.soap12,javax.wsdl.extensions,javax.wsdl.extensions.mime,com.ibm.wsdl.extensions.soap12,com.ibm.wsdl.extensions.http,com.ibm.wsdl.extensions.schema'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl.extensions.schema'/>
    <p n='uses' v='javax.wsdl.extensions,org.w3c.dom'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl.extensions.mime'/>
    <p n='uses' v='javax.wsdl.extensions'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.extensions.soap12'/>
    <p n='uses' v='javax.wsdl,com.ibm.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util,javax.wsdl.extensions.soap12,com.ibm.wsdl.util.xml,javax.wsdl.extensions,javax.wsdl.extensions.mime'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.extensions.http'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,com.ibm.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util.xml'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.extensions.schema'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.xml,javax.xml.namespace,javax.wsdl.extensions.schema,org.w3c.dom,com.ibm.wsdl.util.xml'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.http)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.http ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.mime)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.mime ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.schema ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.soap ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap12)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.soap12 ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.factory)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.factory ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.util ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util.xml)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.util.xml ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.xml)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.xml ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12 ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jaxb-impl/2.1.6.1' presentationname='Apache ServiceMix Bundles: jaxb-impl-2.1.6' symbolicname='org.apache.servicemix.bundles.jaxb-impl' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jaxb-impl/2.1.6_1/org.apache.servicemix.bundles.jaxb-impl-2.1.6_1.jar' version='2.1.6.1'>
  <description>
    This bundle simply wraps jaxb-impl-2.1.6.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    884596
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: jaxb-impl-2.1.6'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jaxb-impl'/>
    <p n='version' t='version' v='2.1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2'/>
    <p n='uses' v='com.sun.xml.bind,com.sun.xml.bind.v2.model.annotation,com.sun.xml.bind.api,com.sun.xml.bind.v2.util,com.sun.xml.bind.v2.runtime,javax.xml.bind,com.sun.istack'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.txw2'/>
    <p n='uses' v='com.sun.xml.txw2.annotation,javax.xml.namespace,com.sun.xml.txw2.output'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.model.annotation'/>
    <p n='uses' v='com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.runtime,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.unmarshaller'/>
    <p n='uses' v='org.xml.sax,com.sun.xml.bind.v2.runtime.unmarshaller,javax.xml.bind.helpers,org.xml.sax.helpers,org.w3c.dom,javax.xml.bind'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.api.impl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.txw2.output'/>
    <p n='uses' v='org.xml.sax,com.sun.xml.txw2,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.xml.sax.ext,javax.xml.parsers,org.xml.sax.helpers,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.schemagen.episode'/>
    <p n='uses' v='com.sun.xml.txw2.annotation,com.sun.xml.txw2'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.util'/>
    <p n='uses' v='org.xml.sax,com.sun.xml.bind.v2.runtime.unmarshaller,com.sun.xml.bind.v2.runtime,javax.xml.namespace,javax.activation,javax.xml.transform.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.runtime.unmarshaller'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.stream.events,javax.xml.bind.attachment,javax.xml.namespace,com.sun.xml.bind.unmarshaller,javax.xml.bind.annotation.adapters,com.sun.xml.fastinfoset.sax,javax.xml.transform,com.sun.xml.bind.v2.util,javax.xml.validation,org.jvnet.staxex,javax.xml.transform.stream,com.sun.istack,javax.xml.stream,com.sun.xml.bind,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.runtime.output,org.xml.sax,javax.activation,com.sun.xml.bind.api,org.w3c.dom,javax.xml.bind.annotation,javax.xml.transform.dom,javax.xml.transform.sax,com.sun.xml.bind.util,com.sun.xml.bind.v2.runtime.reflect,org.xml.sax.helpers,com.sun.xml.bind.v2.runtime,javax.xml.bind.helpers,javax.xml.bind,com.sun.xml.fastinfoset.stax,com.sun.xml.bind.v2.runtime.property'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.marshaller'/>
    <p n='uses' v='com.sun.xml.bind.util,org.xml.sax,org.xml.sax.helpers,javax.xml.parsers,org.w3c.dom,com.sun.istack'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.model.runtime'/>
    <p n='uses' v='com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.runtime.reflect,com.sun.xml.bind.v2.runtime,javax.xml.namespace,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.runtime.reflect.opt'/>
    <p n='uses' v='com.sun.xml.bind,com.sun.xml.bind.v2.model.core,org.xml.sax,com.sun.xml.bind.v2.bytecode,com.sun.xml.bind.api,com.sun.xml.bind.v2.runtime.reflect,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.model.runtime,javax.xml.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.schemagen.xmlschema'/>
    <p n='uses' v='com.sun.xml.txw2.annotation,com.sun.xml.txw2,javax.xml.namespace'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.istack'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,org.xml.sax.helpers,javax.activation,javax.xml.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind'/>
    <p n='uses' v='com.sun.xml.bind.v2,org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.datatype,com.sun.xml.bind.v2.runtime.reflect,javax.xml.bind'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.model.core'/>
    <p n='uses' v='com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.model.annotation,javax.activation,com.sun.xml.bind.v2.runtime,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.xml.bind.v2.model.impl,javax.xml.bind,javax.xml.bind.annotation,javax.xml.transform'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.runtime.output'/>
    <p n='uses' v='javax.xml.stream.events,com.sun.xml.bind,javax.xml.bind.attachment,org.xml.sax,javax.activation,org.w3c.dom,com.sun.xml.bind.util,org.jvnet.fastinfoset,com.sun.xml.bind.v2.runtime.unmarshaller,org.xml.sax.helpers,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.marshaller,org.jvnet.staxex,com.sun.xml.fastinfoset.stax,com.sun.istack,javax.xml.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.bytecode'/>
    <p n='uses' v='com.sun.xml.bind'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.api'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.xml.sax,com.sun.xml.bind.v2.model.annotation,javax.xml.namespace,org.w3c.dom,com.sun.xml.bind.api.impl,javax.xml.transform,com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.runtime.unmarshaller,com.sun.xml.bind.v2.runtime,javax.xml.bind,javax.xml.stream,com.sun.istack'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.model.impl'/>
    <p n='uses' v='com.sun.xml.bind.v2,com.sun.xml.bind.v2.model.annotation,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.xml.bind.api.impl,javax.xml.datatype,javax.xml.transform,com.sun.xml.bind.v2.util,com.sun.xml.bind.v2.runtime.unmarshaller,com.sun.xml.bind.v2.model.runtime,javax.xml.transform.stream,javax.xml.stream,com.sun.istack,com.sun.xml.bind,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.runtime.output,org.xml.sax,javax.imageio,javax.activation,com.sun.xml.bind.api,javax.xml.bind.annotation,javax.imageio.stream,com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.util,com.sun.xml.bind.v2.runtime.reflect,javax.xml.bind.helpers,com.sun.xml.bind.v2.runtime,javax.xml.bind,com.sun.xml.bind.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.model.nav'/>
    <p n='uses' v='com.sun.xml.bind.v2.runtime'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.txw2.annotation'/>
    <p n='version' t='version' v='2.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.schemagen'/>
    <p n='uses' v='com.sun.xml.bind.v2,com.sun.xml.txw2,javax.xml.namespace,com.sun.xml.txw2.output,javax.xml.transform,com.sun.xml.bind.v2.util,com.sun.xml.bind.v2.schemagen.episode,javax.xml.transform.stream,com.sun.xml.bind.v2.schemagen.xmlschema,com.sun.xml.bind,com.sun.xml.bind.v2.model.core,org.xml.sax,javax.activation,com.sun.xml.bind.api,javax.xml.bind.annotation,com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.runtime,javax.xml.bind'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.util'/>
    <p n='uses' v='com.sun.xml.bind,org.xml.sax,javax.xml.bind.helpers,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.runtime.reflect'/>
    <p n='uses' v='com.sun.xml.bind.v2,com.sun.xml.bind,com.sun.xml.bind.v2.model.core,org.xml.sax,javax.xml.bind.annotation.adapters,com.sun.xml.bind.api,com.sun.xml.bind.v2.model.impl,com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.runtime.unmarshaller,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.model.runtime,javax.xml.bind,com.sun.xml.bind.v2.runtime.reflect.opt,com.sun.istack,javax.xml.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.runtime'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,com.sun.xml.bind.v2.model.annotation,javax.xml.namespace,com.sun.xml.bind.unmarshaller,javax.xml.bind.annotation.adapters,com.sun.xml.txw2.output,javax.xml.transform,com.sun.xml.bind.v2.util,com.sun.xml.bind.v2.runtime.unmarshaller,javax.xml.validation,javax.xml.parsers,com.sun.xml.bind.marshaller,com.sun.xml.bind.v2.model.runtime,javax.xml.transform.stream,com.sun.istack,javax.xml.stream,com.sun.xml.bind,com.sun.xml.bind.v2.model.core,org.xml.sax,com.sun.xml.bind.v2.runtime.output,javax.activation,org.w3c.dom,com.sun.xml.bind.api,com.sun.xml.bind.v2.model.impl,javax.xml.bind.annotation,javax.xml.transform.dom,com.sun.xml.bind.v2.model.nav,javax.xml.transform.sax,com.sun.xml.bind.util,com.sun.xml.bind.v2.schemagen,com.sun.xml.bind.v2.runtime.reflect,org.xml.sax.helpers,javax.xml.bind.helpers,javax.xml.bind,com.sun.xml.bind.v2.runtime.property'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.runtime.property'/>
    <p n='uses' v='com.sun.xml.bind.v2,com.sun.xml.bind.v2.model.core,org.xml.sax,javax.xml.namespace,com.sun.xml.bind.api,javax.xml.bind.annotation,com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.util,com.sun.xml.bind.v2.runtime.reflect,com.sun.xml.bind.v2.runtime.unmarshaller,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.model.runtime,javax.xml.bind,javax.xml.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.istack)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.istack
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.api.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.api.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.unmarshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.unmarshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.bytecode)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.bytecode
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.model.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.model.annotation
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.model.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.model.core
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.model.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.model.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.model.nav)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.model.nav
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.model.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.model.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.runtime.output
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime.property)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.runtime.property
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime.reflect)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.runtime.reflect
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime.reflect.opt)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.runtime.reflect.opt
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime.unmarshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.runtime.unmarshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.schemagen)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.schemagen
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.schemagen.episode)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.schemagen.episode
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.schemagen.xmlschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.schemagen.xmlschema
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.sax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.txw2)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.txw2 ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.txw2.annotation)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.txw2.annotation ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.txw2.output)(version&gt;=2.1.6))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.txw2.output ;version=2.1.6
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.helpers)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.helpers ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.jvnet.fastinfoset)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jvnet.fastinfoset
  </require>
  <require extend='false' filter='(&amp;(package=org.jvnet.staxex)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jvnet.staxex
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jsmpp/2.0.0.1' presentationname='Apache ServiceMix Bundles: jsmpp-2.0' symbolicname='org.apache.servicemix.bundles.jsmpp' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsmpp/2.0_1/org.apache.servicemix.bundles.jsmpp-2.0_1.jar' version='2.0.0.1'>
  <description>
    This bundle simply wraps jsmpp-2.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    239772
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: jsmpp-2.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jsmpp'/>
    <p n='version' t='version' v='2.0.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jsmpp.session'/>
    <p n='uses' v='org.jsmpp.extra,org.jsmpp,org.jsmpp.util,org.jsmpp.session.connection,org.jsmpp.session.state,org.slf4j,org.jsmpp.session.connection.socket,org.jsmpp.bean'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jsmpp.extra'/>
    <p n='uses' v='org.jsmpp,org.jsmpp.util,org.jsmpp.bean'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jsmpp.util'/>
    <p n='uses' v='org.jsmpp,org.slf4j,org.jsmpp.bean'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jsmpp.session.connection'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jsmpp'/>
    <p n='uses' v='org.jsmpp.util,org.jsmpp.bean'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jsmpp.session.state'/>
    <p n='uses' v='org.jsmpp.session,org.jsmpp.extra,org.jsmpp.util,org.jsmpp,org.slf4j,org.jsmpp.bean'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jsmpp.session.connection.socket'/>
    <p n='uses' v='org.jsmpp.session.connection'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jsmpp.bean'/>
    <p n='uses' v='org.jsmpp.util'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.jsmpp)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jsmpp ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jsmpp.bean)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jsmpp.bean ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jsmpp.extra)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jsmpp.extra ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jsmpp.session)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jsmpp.session ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jsmpp.session.connection)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jsmpp.session.connection ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jsmpp.session.connection.socket)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jsmpp.session.connection.socket ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jsmpp.session.state)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jsmpp.session.state ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jsmpp.util)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jsmpp.util ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.joda-time/1.5.2.1' presentationname='Apache ServiceMix Bundles: joda-time-1.5.2' symbolicname='org.apache.servicemix.bundles.joda-time' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.joda-time/1.5.2_1/org.apache.servicemix.bundles.joda-time-1.5.2_1.jar' version='1.5.2.1'>
  <description>
    This bundle simply wraps joda-time-1.5.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    545448
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: joda-time-1.5.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.joda-time'/>
    <p n='version' t='version' v='1.5.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Africa'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Atlantic'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.chrono'/>
    <p n='uses' v='org.joda.time,org.joda.time.format,org.joda.time.field'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.America.Indiana'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.America.Argentina'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time'/>
    <p n='uses' v='org.joda.time.convert,org.joda.time.chrono,org.joda.time.format,org.joda.time.base,org.joda.time.field,org.joda.time.tz'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.format'/>
    <p n='uses' v='org.joda.time,org.joda.time.field'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.base'/>
    <p n='uses' v='org.joda.time.convert,org.joda.time.chrono,org.joda.time,org.joda.time.format,org.joda.time.field'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Australia'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Asia'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Etc'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.America.Kentucky'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Antarctica'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.convert'/>
    <p n='uses' v='org.joda.time.chrono,org.joda.time,org.joda.time.format,org.joda.time.field'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.America'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Pacific'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Europe'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.field'/>
    <p n='uses' v='org.joda.time'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.America.North_Dakota'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz'/>
    <p n='uses' v='org.joda.time.chrono,org.joda.time,org.joda.time.format'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.joda.time.tz.data.Indian'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.joda.time)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.base)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.base ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.chrono)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.chrono ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.convert)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.convert ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.field)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.field ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.format)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.format ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.tz ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.tz.data ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Africa)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.tz.data.Africa ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.America)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.tz.data.America ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.America.Argentina)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.tz.data.America.Argentina ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.America.Indiana)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.tz.data.America.Indiana ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.America.Kentucky)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.tz.data.America.Kentucky ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.America.North_Dakota)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.tz.data.America.North_Dakota ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Antarctica)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.tz.data.Antarctica ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Asia)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.tz.data.Asia ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Atlantic)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.tz.data.Atlantic ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Australia)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.tz.data.Australia ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Etc)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.tz.data.Etc ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Europe)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.tz.data.Europe ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Indian)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.tz.data.Indian ;version=1.5.2
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.tz.data.Pacific)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.tz.data.Pacific ;version=1.5.2
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.oro/2.0.8.1' presentationname='Apache ServiceMix Bundles: oro-2.0.8' symbolicname='org.apache.servicemix.bundles.oro' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.oro/2.0.8_1/org.apache.servicemix.bundles.oro-2.0.8_1.jar' version='2.0.8.1'>
  <description>
    This bundle simply wraps oro-2.0.8.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    71463
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: oro-2.0.8'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.oro'/>
    <p n='version' t='version' v='2.0.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.oro.io'/>
    <p n='uses' v='org.apache.oro.text.regex,org.apache.oro.text,org.apache.oro.text.awk'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.oro.text.regex'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.oro.text'/>
    <p n='uses' v='org.apache.oro.text.regex,org.apache.oro.util'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.oro.util'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.oro.text.awk'/>
    <p n='uses' v='org.apache.oro.text.regex'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.oro.text.perl'/>
    <p n='uses' v='org.apache.oro.text.regex,org.apache.oro.text,org.apache.oro.util'/>
    <p n='version' t='version' v='2.0.8'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.oro.io)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.oro.io ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.oro.text)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.oro.text ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.oro.text.awk)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.oro.text.awk ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.oro.text.perl)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.oro.text.perl ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.oro.text.regex)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.oro.text.regex ;version=2.0.8
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.oro.util)(version&gt;=2.0.8))' multiple='false' name='package' optional='false'>
    Import package org.apache.oro.util ;version=2.0.8
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.xmlresolver/1.2.0.1' presentationname='Apache ServiceMix Bundles: xmlresolver-1.2' symbolicname='org.apache.servicemix.bundles.xmlresolver' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.xmlresolver/1.2_1/org.apache.servicemix.bundles.xmlresolver-1.2_1.jar' version='1.2.0.1'>
  <description>
    This bundle simply wraps xmlresolver-1.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    89917
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: xmlresolver-1.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.xmlresolver'/>
    <p n='version' t='version' v='1.2.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.resolver.helpers'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.resolver.apps'/>
    <p n='uses' v='org.apache.xml.resolver.helpers,org.xml.sax,org.xml.sax.helpers,org.apache.xml.resolver,org.apache.xml.resolver.tools'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.resolver'/>
    <p n='uses' v='org.apache.xml.resolver.helpers,javax.xml.parsers,org.apache.xml.resolver.readers'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.resolver.tools'/>
    <p n='uses' v='org.apache.xml.resolver.helpers,javax.xml.transform.sax,org.xml.sax,org.xml.sax.helpers,javax.xml.parsers,org.apache.xml.resolver,javax.xml.transform'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.resolver.readers'/>
    <p n='uses' v='org.apache.xml.resolver.helpers,org.xml.sax,org.xml.sax.helpers,javax.xml.parsers,org.apache.xml.resolver,org.w3c.dom'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.resolver.etc'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.apps)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.apps ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.etc)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.etc ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.readers)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.readers ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.aopalliance/1.0.0.1' presentationname='Apache ServiceMix Bundles: aopalliance-1.0' symbolicname='org.apache.servicemix.bundles.aopalliance' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.aopalliance/1.0_1/org.apache.servicemix.bundles.aopalliance-1.0_1.jar' version='1.0.0.1'>
  <description>
    This bundle simply wraps aopalliance-1.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11988
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: aopalliance-1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.aopalliance'/>
    <p n='version' t='version' v='1.0.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.aopalliance.aop'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.aopalliance.intercept'/>
    <p n='uses' v='org.aopalliance.aop'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.aopalliance.aop)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.aop ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.intercept)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.intercept ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.junit/4.4.0.1' presentationname='Apache ServiceMix Bundles: junit-4.4' symbolicname='org.apache.servicemix.bundles.junit' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.junit/4.4_1/org.apache.servicemix.bundles.junit-4.4_1.jar' version='4.4.0.1'>
  <description>
    This bundle simply wraps junit-4.4.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    171044
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: junit-4.4'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.junit'/>
    <p n='version' t='version' v='4.4.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.internal'/>
    <p n='uses' v='org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.theories.internal'/>
    <p n='uses' v='org.junit.internal.runners,org.junit,org.junit.experimental.theories'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runners'/>
    <p n='uses' v='org.junit.internal.runners,org.junit,junit.framework,org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit'/>
    <p n='uses' v='org.junit.internal,org.junit.matchers'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.results'/>
    <p n='uses' v='org.junit.internal,org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.extensions'/>
    <p n='uses' v='junit.framework'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.theories.suppliers'/>
    <p n='uses' v='org.junit.experimental.theories'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.textui'/>
    <p n='uses' v='junit.runner,junit.framework'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runner.manipulation'/>
    <p n='uses' v='org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.theories'/>
    <p n='uses' v='org.junit.internal.runners,org.junit.experimental.theories.internal'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runner.notification'/>
    <p n='uses' v='org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.runner'/>
    <p n='uses' v='junit.framework'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.internal.runners'/>
    <p n='uses' v='org.junit,junit.extensions,junit.framework,org.junit.runner.manipulation,org.junit.runner.notification,org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.internal.requests'/>
    <p n='uses' v='org.junit.internal.runners,org.junit.runners,org.junit,junit.framework,org.junit.runner.manipulation,org.junit.runner.notification,org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.framework'/>
    <p n='uses' v='org.junit,org.junit.runner.manipulation,org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.matchers'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runner'/>
    <p n='uses' v='org.junit.internal,junit.runner,org.junit.internal.runners,org.junit.internal.requests,junit.framework,org.junit.runner.manipulation,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=junit.extensions)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.extensions ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.runner)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.runner ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.textui)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.textui ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.results)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.results ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.theories)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.theories ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.theories.internal)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.theories.internal ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.theories.suppliers)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.theories.suppliers ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.internal)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.internal ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.internal.requests)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.internal.requests ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.internal.runners)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.internal.runners ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.matchers)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.matchers ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runner)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runner ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runner.manipulation)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runner.manipulation ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runner.notification)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runner.notification ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runners)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runners ;version=4.4.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.junit/3.8.2.1' presentationname='Apache ServiceMix Bundles: junit-3.8.2' symbolicname='org.apache.servicemix.bundles.junit' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.junit/3.8.2_1/org.apache.servicemix.bundles.junit-3.8.2_1.jar' version='3.8.2.1'>
  <description>
    This bundle simply wraps junit-3.8.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    130118
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: junit-3.8.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.junit'/>
    <p n='version' t='version' v='3.8.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.swingui'/>
    <p n='uses' v='javax.swing.tree,junit.extensions,javax.swing.border,javax.swing.event,junit.runner,junit.framework,javax.swing'/>
    <p n='version' t='version' v='3.8.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.swingui.icons'/>
    <p n='version' t='version' v='3.8.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.runner'/>
    <p n='uses' v='junit.framework'/>
    <p n='version' t='version' v='3.8.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.extensions'/>
    <p n='uses' v='junit.framework'/>
    <p n='version' t='version' v='3.8.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.framework'/>
    <p n='version' t='version' v='3.8.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.textui'/>
    <p n='uses' v='junit.runner,junit.framework'/>
    <p n='version' t='version' v='3.8.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.awtui'/>
    <p n='uses' v='junit.runner,junit.framework'/>
    <p n='version' t='version' v='3.8.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.border)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.border
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.event
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.tree
  </require>
  <require extend='false' filter='(&amp;(package=junit.awtui)(version&gt;=3.8.2))' multiple='false' name='package' optional='false'>
    Import package junit.awtui ;version=3.8.2
  </require>
  <require extend='false' filter='(&amp;(package=junit.extensions)(version&gt;=3.8.2))' multiple='false' name='package' optional='false'>
    Import package junit.extensions ;version=3.8.2
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=3.8.2))' multiple='false' name='package' optional='false'>
    Import package junit.framework ;version=3.8.2
  </require>
  <require extend='false' filter='(&amp;(package=junit.runner)(version&gt;=3.8.2))' multiple='false' name='package' optional='false'>
    Import package junit.runner ;version=3.8.2
  </require>
  <require extend='false' filter='(&amp;(package=junit.swingui)(version&gt;=3.8.2))' multiple='false' name='package' optional='false'>
    Import package junit.swingui ;version=3.8.2
  </require>
  <require extend='false' filter='(&amp;(package=junit.swingui.icons)(version&gt;=3.8.2))' multiple='false' name='package' optional='false'>
    Import package junit.swingui.icons ;version=3.8.2
  </require>
  <require extend='false' filter='(&amp;(package=junit.textui)(version&gt;=3.8.2))' multiple='false' name='package' optional='false'>
    Import package junit.textui ;version=3.8.2
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.cglib-2.1_3/1.0.0.m1' presentationname='ServiceMix OSGI Common Bundles: cglib-2.1_3' symbolicname='org.apache.servicemix.bundles.cglib-2.1_3' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.cglib-2.1_3/1.0-m1/org.apache.servicemix.bundles.cglib-2.1_3-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    This bundle simply wraps cglib-2.1_3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    332246
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix OSGI Common Bundles: cglib-2.1_3'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.cglib-2.1_3'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.reflect'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.core'/>
    <p n='uses' v='net.sf.cglib.asm,net.sf.cglib.asm.util'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.beans'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform.impl'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.transform,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform'/>
    <p n='uses' v='net.sf.cglib.core,org.apache.tools.ant.types,net.sf.cglib.asm,org.apache.tools.ant,net.sf.cglib.asm.attrs'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.proxy'/>
    <p n='uses' v='net.sf.cglib.reflect,net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.asm.attrs'/>
    <p n='uses' v='net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.util'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform.hook'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm,net.sf.cglib.transform,org.codehaus.aspectwerkz.hook'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.asm ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm.attrs)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.asm.attrs ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.asm.util
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.beans)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.beans ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.core)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.core ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.proxy ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.reflect)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.reflect ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform.hook)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform.hook ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform.impl)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform.impl ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.util)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.util ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.aspectwerkz.hook)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.aspectwerkz.hook
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.cglib-2.1_3/1.0.0.m2' presentationname='ServiceMix OSGI Common Bundles: cglib-2.1_3' symbolicname='org.apache.servicemix.bundles.cglib-2.1_3' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.cglib-2.1_3/1.0-m2/org.apache.servicemix.bundles.cglib-2.1_3-1.0-m2.jar' version='1.0.0.m2'>
  <description>
    This bundle simply wraps cglib-2.1_3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    332261
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix OSGI Common Bundles: cglib-2.1_3'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.cglib-2.1_3'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.reflect'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.core'/>
    <p n='uses' v='net.sf.cglib.asm,net.sf.cglib.asm.util'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.beans'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform.impl'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.transform,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform'/>
    <p n='uses' v='net.sf.cglib.core,org.apache.tools.ant.types,net.sf.cglib.asm,org.apache.tools.ant,net.sf.cglib.asm.attrs'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.proxy'/>
    <p n='uses' v='net.sf.cglib.reflect,net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.asm.attrs'/>
    <p n='uses' v='net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.util'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform.hook'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm,net.sf.cglib.transform,org.codehaus.aspectwerkz.hook'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.asm ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm.attrs)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.asm.attrs ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.asm.util
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.beans)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.beans ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.core)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.core ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.proxy ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.reflect)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.reflect ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform.hook)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform.hook ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform.impl)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform.impl ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.util)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.util ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.aspectwerkz.hook)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.aspectwerkz.hook
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.cglib-2.1_3/1.0.0.rc1' presentationname='Apache ServiceMix OSGI Common Bundles: cglib-2.1_3' symbolicname='org.apache.servicemix.bundles.cglib-2.1_3' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.cglib-2.1_3/1.0.0-rc1/org.apache.servicemix.bundles.cglib-2.1_3-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    This bundle simply wraps cglib-2.1_3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    332437
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: cglib-2.1_3'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.cglib-2.1_3'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.reflect'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.core'/>
    <p n='uses' v='net.sf.cglib.asm,net.sf.cglib.asm.util'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.beans'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform.impl'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.transform,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform'/>
    <p n='uses' v='net.sf.cglib.core,org.apache.tools.ant.types,net.sf.cglib.asm,org.apache.tools.ant,net.sf.cglib.asm.attrs'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.proxy'/>
    <p n='uses' v='net.sf.cglib.reflect,net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.asm.attrs'/>
    <p n='uses' v='net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.util'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform.hook'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm,net.sf.cglib.transform,org.codehaus.aspectwerkz.hook'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.asm ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm.attrs)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.asm.attrs ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.asm.util
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.beans)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.beans ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.core)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.core ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.proxy ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.reflect)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.reflect ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform.hook)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform.hook ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform.impl)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform.impl ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.util)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.util ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.aspectwerkz.hook)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.aspectwerkz.hook
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.cglib-2.1_3/1.0.0.m3' presentationname='Apache ServiceMix OSGI Common Bundles: cglib-2.1_3' symbolicname='org.apache.servicemix.bundles.cglib-2.1_3' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.cglib-2.1_3/1.0-m3/org.apache.servicemix.bundles.cglib-2.1_3-1.0-m3.jar' version='1.0.0.m3'>
  <description>
    This bundle simply wraps cglib-2.1_3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    332465
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: cglib-2.1_3'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.cglib-2.1_3'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.reflect'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.core'/>
    <p n='uses' v='net.sf.cglib.asm,net.sf.cglib.asm.util'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.beans'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform.impl'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.transform,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform'/>
    <p n='uses' v='net.sf.cglib.core,org.apache.tools.ant.types,net.sf.cglib.asm,org.apache.tools.ant,net.sf.cglib.asm.attrs'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.proxy'/>
    <p n='uses' v='net.sf.cglib.reflect,net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.asm.attrs'/>
    <p n='uses' v='net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.util'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform.hook'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm,net.sf.cglib.transform,org.codehaus.aspectwerkz.hook'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.asm ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm.attrs)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.asm.attrs ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.asm.util
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.beans)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.beans ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.core)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.core ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.proxy ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.reflect)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.reflect ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform.hook)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform.hook ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform.impl)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform.impl ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.util)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.util ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.aspectwerkz.hook)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.aspectwerkz.hook
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.snmp4j/1.8.1.1' presentationname='Apache ServiceMix Bundles: snmp4j-1.8.1' symbolicname='org.apache.servicemix.bundles.snmp4j' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.snmp4j/1.8.1_1/org.apache.servicemix.bundles.snmp4j-1.8.1_1.jar' version='1.8.1.1'>
  <description>
    This bundle simply wraps snmp4j-1.8.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    288947
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: snmp4j-1.8.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.snmp4j'/>
    <p n='version' t='version' v='1.8.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j.mp.doc-files'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j.test'/>
    <p n='uses' v='org.snmp4j.transport,org.snmp4j.mp,org.snmp4j.util,org.snmp4j.smi,org.snmp4j,org.snmp4j.security'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j.mp'/>
    <p n='uses' v='org.snmp4j.asn1,org.snmp4j.smi,org.snmp4j,org.snmp4j.event,org.snmp4j.security,org.snmp4j.log'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j.asn1.doc-files'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j.security.doc-files'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j.event'/>
    <p n='uses' v='org.snmp4j.smi,org.snmp4j.asn1,org.snmp4j,org.snmp4j.security'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j.transport.doc-files'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j.smi.doc-files'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j.transport'/>
    <p n='uses' v='org.snmp4j.asn1,org.snmp4j.smi,org.snmp4j,org.snmp4j.log'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j.tools.console'/>
    <p n='uses' v='org.snmp4j.mp,org.snmp4j.event,org.snmp4j.transport,org.snmp4j.util,org.snmp4j.smi,org.snmp4j.asn1,org.snmp4j,org.snmp4j.security,org.snmp4j.log'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j.util'/>
    <p n='uses' v='org.snmp4j.mp,org.snmp4j.smi,org.snmp4j.asn1,org.snmp4j,org.snmp4j.event,org.snmp4j.log'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j.util.doc-files'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j.doc-files'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j.asn1'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j.smi'/>
    <p n='uses' v='org.snmp4j.asn1,org.snmp4j,org.snmp4j.log'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j'/>
    <p n='uses' v='org.snmp4j.transport,org.snmp4j.mp,org.snmp4j.asn1,org.snmp4j.smi,org.snmp4j.event,org.snmp4j.security,org.snmp4j.log'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j.log'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.snmp4j.util'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.snmp4j.security'/>
    <p n='uses' v='org.snmp4j.mp,javax.crypto,org.snmp4j.event,javax.crypto.spec,org.snmp4j.smi,org.snmp4j.asn1,org.snmp4j,org.snmp4j.log'/>
    <p n='version' t='version' v='1.8.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.crypto
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto.spec)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.crypto.spec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j ;version=1.8.1
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.asn1)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j.asn1 ;version=1.8.1
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.asn1.doc-files)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j.asn1.doc-files ;version=1.8.1
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.doc-files)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j.doc-files ;version=1.8.1
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.event)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j.event ;version=1.8.1
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.log)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j.log ;version=1.8.1
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.mp)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j.mp ;version=1.8.1
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.mp.doc-files)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j.mp.doc-files ;version=1.8.1
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.security)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j.security ;version=1.8.1
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.security.doc-files)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j.security.doc-files ;version=1.8.1
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.smi)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j.smi ;version=1.8.1
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.smi.doc-files)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j.smi.doc-files ;version=1.8.1
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.test)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j.test ;version=1.8.1
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.tools.console)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j.tools.console ;version=1.8.1
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.transport)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j.transport ;version=1.8.1
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.transport.doc-files)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j.transport.doc-files ;version=1.8.1
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.util)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j.util ;version=1.8.1
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.util.doc-files)(version&gt;=1.8.1))' multiple='false' name='package' optional='true'>
    Import package org.snmp4j.util.doc-files ;version=1.8.1
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.xstream-1.2.2/1.0.0.m1' presentationname='ServiceMix OSGI Common Bundles: xstream-1.2.2' symbolicname='org.apache.servicemix.bundles.xstream-1.2.2' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.xstream-1.2.2/1.0-m1/org.apache.servicemix.bundles.xstream-1.2.2-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    This bundle simply wraps xstream-1.2.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    411195
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix OSGI Common Bundles: xstream-1.2.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.xstream-1.2.2'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io'/>
    <p n='uses' v='com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters,com.thoughtworks.xstream.core'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.copy'/>
    <p n='uses' v='com.thoughtworks.xstream.io'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.javabean'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.alias,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.binary'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.extended'/>
    <p n='uses' v='com.thoughtworks.xstream.io,org.joda.time,com.thoughtworks.xstream.mapper,org.joda.time.format,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters,com.thoughtworks.xstream.converters.basic,com.thoughtworks.xstream.converters.collections,javax.swing.plaf,javax.security.auth'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.xml.xppdom'/>
    <p n='uses' v='org.xmlpull.mxp1,org.xmlpull.v1'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlpull.mxp1'/>
    <p n='uses' v='org.xmlpull.v1'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.mapper'/>
    <p n='uses' v='net.sf.cglib.proxy,com.thoughtworks.xstream.alias,com.thoughtworks.xstream.converters,com.thoughtworks.xstream.core'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.core.util'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.reflection'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters,com.thoughtworks.xstream.core,sun.misc,com.thoughtworks.xstream.converters.basic,net.sf.cglib.proxy,sun.reflect'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.core'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.persistence'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.core'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters,com.thoughtworks.xstream,com.thoughtworks.xstream.alias,com.thoughtworks.xstream.io.path'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.enums'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.converters.collections,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.xml'/>
    <p n='uses' v='com.thoughtworks.xstream.io,nu.xom,org.dom4j.io,org.xml.sax,com.thoughtworks.xstream.io.xml.xppdom,org.xmlpull.mxp1,javax.xml.namespace,com.thoughtworks.xstream.core.util,org.w3c.dom,org.jdom,com.thoughtworks.xstream.converters,org.dom4j.tree,javax.xml.transform.sax,org.dom4j,org.jdom.input,org.xmlpull.v1,com.thoughtworks.xstream,org.xml.sax.helpers,javax.xml.parsers,javax.xml.stream'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.basic'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.annotations'/>
    <p n='uses' v='com.thoughtworks.xstream,com.thoughtworks.xstream.converters.collections,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlpull.v1'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.json'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,org.codehaus.jettison.mapped,com.thoughtworks.xstream.core.util,javax.xml.stream'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.converters.extended,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters,com.thoughtworks.xstream.core,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream.converters.basic,com.thoughtworks.xstream.converters.collections,com.thoughtworks.xstream.alias'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.collections'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters,com.thoughtworks.xstream.core'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.alias'/>
    <p n='uses' v='com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.path'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.alias)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.alias ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.annotations)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.annotations ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.basic)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.basic ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.collections)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.collections
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.enums)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.enums ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.extended)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.extended
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.javabean)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.javabean
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.reflection)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.reflection
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.core)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.core ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.core.util)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.core.util ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.binary)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.binary ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.copy)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.copy ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.json)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.json ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.path)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.path ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.xml ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml.xppdom)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.xml.xppdom ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.mapper)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.mapper ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.persistence)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.persistence ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.plaf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.plaf
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=nu.xom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package nu.xom
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.dom4j
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.dom4j.io
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.dom4j.tree
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.joda.time
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.format)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.format
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.mxp1)(version&gt;=1.2.2))' multiple='false' name='package' optional='true'>
    Import package org.xmlpull.mxp1 ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.v1)(version&gt;=1.2.2))' multiple='false' name='package' optional='true'>
    Import package org.xmlpull.v1 ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
  <require extend='false' filter='(&amp;(package=sun.reflect)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.reflect
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.xstream-1.2.2/1.0.0.m2' presentationname='ServiceMix OSGI Common Bundles: xstream-1.2.2' symbolicname='org.apache.servicemix.bundles.xstream-1.2.2' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.xstream-1.2.2/1.0-m2/org.apache.servicemix.bundles.xstream-1.2.2-1.0-m2.jar' version='1.0.0.m2'>
  <description>
    This bundle simply wraps xstream-1.2.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    411163
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix OSGI Common Bundles: xstream-1.2.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.xstream-1.2.2'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io'/>
    <p n='uses' v='com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters,com.thoughtworks.xstream.core'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.copy'/>
    <p n='uses' v='com.thoughtworks.xstream.io'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.javabean'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.alias,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.binary'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.extended'/>
    <p n='uses' v='com.thoughtworks.xstream.io,org.joda.time,com.thoughtworks.xstream.mapper,org.joda.time.format,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters,com.thoughtworks.xstream.converters.basic,com.thoughtworks.xstream.converters.collections,javax.swing.plaf,javax.security.auth'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.xml.xppdom'/>
    <p n='uses' v='org.xmlpull.mxp1,org.xmlpull.v1'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlpull.mxp1'/>
    <p n='uses' v='org.xmlpull.v1'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.mapper'/>
    <p n='uses' v='net.sf.cglib.proxy,com.thoughtworks.xstream.alias,com.thoughtworks.xstream.converters,com.thoughtworks.xstream.core'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.core.util'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.reflection'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters,com.thoughtworks.xstream.core,sun.misc,com.thoughtworks.xstream.converters.basic,net.sf.cglib.proxy,sun.reflect'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.core'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.persistence'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.core'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters,com.thoughtworks.xstream,com.thoughtworks.xstream.alias,com.thoughtworks.xstream.io.path'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.enums'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.converters.collections,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.xml'/>
    <p n='uses' v='com.thoughtworks.xstream.io,nu.xom,org.dom4j.io,org.xml.sax,com.thoughtworks.xstream.io.xml.xppdom,org.xmlpull.mxp1,javax.xml.namespace,com.thoughtworks.xstream.core.util,org.w3c.dom,org.jdom,com.thoughtworks.xstream.converters,org.dom4j.tree,javax.xml.transform.sax,org.dom4j,org.jdom.input,org.xmlpull.v1,com.thoughtworks.xstream,org.xml.sax.helpers,javax.xml.parsers,javax.xml.stream'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.basic'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.annotations'/>
    <p n='uses' v='com.thoughtworks.xstream,com.thoughtworks.xstream.converters.collections,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlpull.v1'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.json'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,org.codehaus.jettison.mapped,com.thoughtworks.xstream.core.util,javax.xml.stream'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.converters.extended,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters,com.thoughtworks.xstream.core,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream.converters.basic,com.thoughtworks.xstream.converters.collections,com.thoughtworks.xstream.alias'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.collections'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters,com.thoughtworks.xstream.core'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.alias'/>
    <p n='uses' v='com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.path'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.alias)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.alias ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.annotations)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.annotations ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.basic)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.basic ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.collections)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.collections
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.enums)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.enums ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.extended)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.extended
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.javabean)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.javabean
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.reflection)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.reflection
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.core)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.core ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.core.util)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.core.util ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.binary)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.binary ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.copy)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.copy ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.json)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.json ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.path)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.path ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.xml ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml.xppdom)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.xml.xppdom ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.mapper)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.mapper ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.persistence)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.persistence ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.plaf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.plaf
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=nu.xom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package nu.xom
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.dom4j
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.dom4j.io
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.dom4j.tree
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.joda.time
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.format)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.joda.time.format
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.mxp1)(version&gt;=1.2.2))' multiple='false' name='package' optional='true'>
    Import package org.xmlpull.mxp1 ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.v1)(version&gt;=1.2.2))' multiple='false' name='package' optional='true'>
    Import package org.xmlpull.v1 ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
  <require extend='false' filter='(&amp;(package=sun.reflect)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.reflect
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.woodstox-3.2.3/1.0.0.m1' presentationname='ServiceMix OSGI Common Bundles: woodstox-3.2.3' symbolicname='org.apache.servicemix.bundles.woodstox-3.2.3' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.woodstox-3.2.3/1.0-m1/org.apache.servicemix.bundles.woodstox-3.2.3-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    This bundle simply wraps woodstox-3.2.3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    529363
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix OSGI Common Bundles: woodstox-3.2.3'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.woodstox-3.2.3'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.stax2.validation'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.compat'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.evt'/>
    <p n='uses' v='com.ctc.wstx.compat,javax.xml.stream.events,com.ctc.wstx.sw,org.codehaus.stax2.evt,com.ctc.wstx.ent,com.ctc.wstx.util,org.codehaus.stax2,com.ctc.wstx.exc,com.ctc.wstx.dtd,javax.xml.namespace,com.ctc.wstx.sr,com.ctc.wstx.io,com.ctc.wstx.cfg,javax.xml.stream.util,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.stax2.evt'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.stax'/>
    <p n='uses' v='javax.xml.stream.events,com.ctc.wstx.sw,org.codehaus.stax2.io,org.codehaus.stax2,com.ctc.wstx.dtd,javax.xml.namespace,javax.xml.transform,com.ctc.wstx.cfg,javax.xml.transform.stream,com.ctc.wstx.dom,javax.xml.stream.util,javax.xml.stream,com.ctc.wstx.evt,org.codehaus.stax2.evt,com.ctc.wstx.util,org.xml.sax,com.ctc.wstx.exc,com.ctc.wstx.api,com.ctc.wstx.sr,javax.xml.transform.dom,javax.xml.transform.sax,com.ctc.wstx.io'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.ent'/>
    <p n='uses' v='com.ctc.wstx.evt,com.ctc.wstx.api,com.ctc.wstx.io,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.sw'/>
    <p n='uses' v='org.codehaus.stax2.validation,javax.xml.stream.events,org.codehaus.stax2.io,com.ctc.wstx.util,org.codehaus.stax2,com.ctc.wstx.api,com.ctc.wstx.exc,com.ctc.wstx.sr,javax.xml.namespace,com.ctc.wstx.io,com.ctc.wstx.cfg,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.stax2.io'/>
    <p n='uses' v='javax.xml.transform'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.util'/>
    <p n='uses' v='com.ctc.wstx.compat,org.codehaus.stax2.validation,org.xml.sax,com.ctc.wstx.api,com.ctc.wstx.dtd,javax.xml.namespace,org.xml.sax.ext,com.ctc.wstx.cfg,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.stax2'/>
    <p n='uses' v='org.codehaus.stax2.validation,javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.exc'/>
    <p n='uses' v='org.codehaus.stax2.validation,com.ctc.wstx.compat,com.ctc.wstx.util,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.api'/>
    <p n='uses' v='com.ctc.wstx.compat,com.ctc.wstx.ent,org.codehaus.stax2.io,com.ctc.wstx.util,org.codehaus.stax2,com.ctc.wstx.dtd,com.ctc.wstx.io,com.ctc.wstx.cfg,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.sr'/>
    <p n='uses' v='com.ctc.wstx.compat,org.codehaus.stax2.validation,com.ctc.wstx.evt,com.ctc.wstx.sw,com.ctc.wstx.ent,com.ctc.wstx.util,org.xml.sax,org.codehaus.stax2,com.ctc.wstx.exc,com.ctc.wstx.api,javax.xml.namespace,com.ctc.wstx.dtd,org.xml.sax.ext,com.ctc.wstx.io,com.ctc.wstx.cfg,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.dtd'/>
    <p n='uses' v='com.ctc.wstx.compat,org.codehaus.stax2.validation,com.ctc.wstx.ent,com.ctc.wstx.util,org.codehaus.stax2,com.ctc.wstx.api,com.ctc.wstx.exc,com.ctc.wstx.sr,com.ctc.wstx.io,com.ctc.wstx.cfg,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.msv'/>
    <p n='uses' v='org.codehaus.stax2.validation,com.sun.msv.grammar.trex,org.xml.sax,com.ctc.wstx.util,com.sun.msv.reader.trex.ng,com.ctc.wstx.exc,com.ctc.wstx.api,com.sun.msv.verifier,com.sun.msv.reader.util,com.sun.msv.verifier.regexp,com.sun.msv.grammar,org.relaxng.datatype,com.sun.msv.reader,javax.xml.parsers,com.sun.msv.util,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.sax'/>
    <p n='uses' v='com.ctc.wstx.stax,org.xml.sax,com.ctc.wstx.util,org.codehaus.stax2,com.ctc.wstx.api,com.ctc.wstx.exc,com.ctc.wstx.dtd,com.ctc.wstx.sr,org.xml.sax.ext,javax.xml.parsers,com.ctc.wstx.io,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.stax2.ri'/>
    <p n='uses' v='org.codehaus.stax2.validation,org.codehaus.stax2,javax.xml.namespace,javax.xml.stream.util,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.io'/>
    <p n='uses' v='com.ctc.wstx.util,org.codehaus.stax2,com.ctc.wstx.api,com.ctc.wstx.exc,javax.xml.transform,com.ctc.wstx.cfg,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.cfg'/>
    <p n='uses' v='javax.xml.stream'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.dom'/>
    <p n='uses' v='org.codehaus.stax2.validation,com.ctc.wstx.util,org.codehaus.stax2,com.ctc.wstx.exc,com.ctc.wstx.api,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,com.ctc.wstx.io,com.ctc.wstx.cfg,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.api)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.api ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.cfg)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.cfg ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.compat)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.compat ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.dom)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.dom ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.dtd)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.dtd ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.ent)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.ent ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.evt)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.evt ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.exc)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.exc ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.io)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.io ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.msv)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.msv ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.sax)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.sax ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.sr)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.sr ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.stax)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.stax ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.sw)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.sw ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.util)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.util ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.msv.grammar)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.grammar
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.msv.grammar.trex)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.grammar.trex
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.msv.reader)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.reader
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.msv.reader.trex.ng)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.reader.trex.ng
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.msv.reader.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.reader.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.msv.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.msv.verifier)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.verifier
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.msv.verifier.regexp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.verifier.regexp
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.stax2)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.stax2 ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.stax2.evt)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.stax2.evt ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.stax2.io)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.stax2.io ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.stax2.ri)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.stax2.ri ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.stax2.validation)(version&gt;=3.2.3))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.stax2.validation ;version=3.2.3
  </require>
  <require extend='false' filter='(&amp;(package=org.relaxng.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.relaxng.datatype
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.cglib/2.1.0.3_2' presentationname='Apache ServiceMix Bundles: cglib-2.1_3' symbolicname='org.apache.servicemix.bundles.cglib' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.cglib/2.1_3_2/org.apache.servicemix.bundles.cglib-2.1_3_2.jar' version='2.1.0.3_2'>
  <description>
    This bundle simply wraps cglib-2.1_3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    338033
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: cglib-2.1_3'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.cglib'/>
    <p n='version' t='version' v='2.1.0.3_2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.reflect'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.core'/>
    <p n='uses' v='net.sf.cglib.asm,net.sf.cglib.asm.util'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.beans'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform.impl'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.transform,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform'/>
    <p n='uses' v='net.sf.cglib.core,org.apache.tools.ant.types,net.sf.cglib.asm,org.apache.tools.ant,net.sf.cglib.asm.attrs'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.proxy'/>
    <p n='uses' v='net.sf.cglib.reflect,net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.asm.attrs'/>
    <p n='uses' v='net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.util'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform.hook'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm,net.sf.cglib.transform,org.codehaus.aspectwerkz.hook'/>
    <p n='version' t='version' v='2.1.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.asm ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm.attrs)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.asm.attrs ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.asm.util
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.beans)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.beans ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.core)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.core ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.proxy ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.reflect)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.reflect ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform.hook)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform.hook ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform.impl)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform.impl ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.util)(version&gt;=2.1.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.util ;version=2.1.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.aspectwerkz.hook)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.aspectwerkz.hook
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.cglib/2.1.0.3_1' presentationname='Apache ServiceMix Bundles: cglib-2.1_3' symbolicname='org.apache.servicemix.bundles.cglib' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.cglib/2.1_3_1/org.apache.servicemix.bundles.cglib-2.1_3_1.jar' version='2.1.0.3_1'>
  <description>
    This bundle simply wraps cglib-2.1_3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    332678
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: cglib-2.1_3'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.cglib'/>
    <p n='version' t='version' v='2.1.0.3_1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.reflect'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.core'/>
    <p n='uses' v='net.sf.cglib.asm,net.sf.cglib.asm.util'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.beans'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform.impl'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.transform,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform'/>
    <p n='uses' v='net.sf.cglib.core,org.apache.tools.ant.types,net.sf.cglib.asm,org.apache.tools.ant,net.sf.cglib.asm.attrs'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.proxy'/>
    <p n='uses' v='net.sf.cglib.reflect,net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.asm.attrs'/>
    <p n='uses' v='net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.util'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.cglib.transform.hook'/>
    <p n='uses' v='net.sf.cglib.core,net.sf.cglib.asm,net.sf.cglib.transform,org.codehaus.aspectwerkz.hook'/>
    <p n='version' t='version' v='2.1.0.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.asm ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm.attrs)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.asm.attrs ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.asm.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.cglib.asm.util
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.beans)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.beans ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.core)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.core ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.proxy ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.reflect)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.reflect ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform.hook)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform.hook ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.transform.impl)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.transform.impl ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.util)(version&gt;=2.1.0.3))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.util ;version=2.1.0.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.aspectwerkz.hook)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.aspectwerkz.hook
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jline/0.9.94.1' presentationname='Apache ServiceMix Bundles: jline-0.9.94' symbolicname='org.apache.servicemix.bundles.jline' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jline/0.9.94_1/org.apache.servicemix.bundles.jline-0.9.94_1.jar' version='0.9.94.1'>
  <description>
    This bundle simply wraps jline-0.9.94.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    92850
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: jline-0.9.94'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jline'/>
    <p n='version' t='version' v='0.9.94.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='jline'/>
    <p n='uses' v='javax.swing'/>
    <p n='version' t='version' v='0.9.94'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=jline)(version&gt;=0.9.94))' multiple='false' name='package' optional='false'>
    Import package jline ;version=0.9.94
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.wsdl4j-1.6.1/4.0.0.m1' presentationname='Apache ServiceMix OSGI Common Bundles: wsdl4j' symbolicname='org.apache.servicemix.bundles.wsdl4j-1.6.1' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.wsdl4j-1.6.1/4.0-m1/org.apache.servicemix.bundles.wsdl4j-1.6.1-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    This bundle simply wraps wsdl4j-1.6.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    158878
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: wsdl4j'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.wsdl4j-1.6.1'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.namespace'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.extensions.mime'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,com.ibm.wsdl,javax.xml.namespace,org.w3c.dom,javax.wsdl.extensions.mime,com.ibm.wsdl.util.xml'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl.xml'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.xml.sax,org.w3c.dom'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.extensions.soap'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions.soap,com.ibm.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util,com.ibm.wsdl.util.xml,javax.wsdl.extensions,javax.wsdl.extensions.mime'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.util'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.util.xml'/>
    <p n='uses' v='javax.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl.extensions.soap12'/>
    <p n='uses' v='javax.wsdl.extensions,javax.xml.namespace'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.xml'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,javax.wsdl.xml,com.ibm.wsdl,javax.xml.namespace,com.ibm.wsdl.util,org.w3c.dom,com.ibm.wsdl.util.xml,javax.wsdl.extensions,javax.wsdl.factory,javax.xml.parsers,javax.wsdl.extensions.schema,com.ibm.wsdl.extensions.schema'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.factory'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.factory,javax.wsdl.xml,com.ibm.wsdl.extensions,com.ibm.wsdl,com.ibm.wsdl.xml'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl.extensions'/>
    <p n='uses' v='javax.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util.xml'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl.extensions.http'/>
    <p n='uses' v='javax.wsdl.extensions'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl.factory'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.xml'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.extensions'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.mime,com.ibm.wsdl.extensions.soap,javax.xml.namespace,javax.wsdl.extensions.soap12,javax.wsdl.extensions,javax.wsdl.extensions.mime,com.ibm.wsdl.extensions.soap12,com.ibm.wsdl.extensions.http,com.ibm.wsdl.extensions.schema'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl.extensions.schema'/>
    <p n='uses' v='javax.wsdl.extensions,org.w3c.dom'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.wsdl.extensions.mime'/>
    <p n='uses' v='javax.wsdl.extensions'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.extensions.soap12'/>
    <p n='uses' v='javax.wsdl,com.ibm.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util,javax.wsdl.extensions.soap12,com.ibm.wsdl.util.xml,javax.wsdl.extensions,javax.wsdl.extensions.mime'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.extensions.http'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,com.ibm.wsdl,javax.xml.namespace,org.w3c.dom,com.ibm.wsdl.util.xml'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibm.wsdl.extensions.schema'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.xml,javax.xml.namespace,javax.wsdl.extensions.schema,org.w3c.dom,com.ibm.wsdl.util.xml'/>
    <p n='version' t='version' v='1.6.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.http)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.http ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.mime)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.mime ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.schema ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.soap ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap12)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.soap12 ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.factory)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.factory ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.util ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util.xml)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.util.xml ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.xml)(version&gt;=1.6.1))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.xml ;version=1.6.1
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12 ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.commons-io/1.3.2.1' presentationname='Apache ServiceMix Bundles: commons-io-1.3.2' symbolicname='org.apache.servicemix.bundles.commons-io' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-io/1.3.2_1/org.apache.servicemix.bundles.commons-io-1.3.2_1.jar' version='1.3.2.1'>
  <description>
    This bundle simply wraps commons-io-1.3.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    88819
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: commons-io-1.3.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.commons-io'/>
    <p n='version' t='version' v='1.3.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.io.output'/>
    <p n='uses' v='org.apache.commons.io'/>
    <p n='version' t='version' v='1.3.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.io'/>
    <p n='uses' v='org.apache.commons.io.output,org.apache.commons.io.filefilter'/>
    <p n='version' t='version' v='1.3.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.io.input'/>
    <p n='uses' v='org.apache.commons.io'/>
    <p n='version' t='version' v='1.3.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.io.filefilter'/>
    <p n='uses' v='org.apache.commons.io'/>
    <p n='version' t='version' v='1.3.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.io)(version&gt;=1.3.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.io ;version=1.3.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.io.filefilter)(version&gt;=1.3.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.io.filefilter ;version=1.3.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.io.input)(version&gt;=1.3.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.io.input ;version=1.3.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.io.output)(version&gt;=1.3.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.io.output ;version=1.3.2
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.dom4j/1.6.0.1' presentationname='Apache ServiceMix Bundles: dom4j-1.6' symbolicname='org.apache.servicemix.bundles.dom4j' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.dom4j/1.6_1/org.apache.servicemix.bundles.dom4j-1.6_1.jar' version='1.6.0.1'>
  <description>
    This bundle simply wraps dom4j-1.6.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    320573
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: dom4j-1.6'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.dom4j'/>
    <p n='version' t='version' v='1.6.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.dom4j.datatype'/>
    <p n='uses' v='org.dom4j.util,org.dom4j,org.dom4j.io,org.relaxng.datatype,com.sun.msv.datatype.xsd,org.xml.sax,com.sun.msv.datatype,org.dom4j.tree'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.dom4j.rule.pattern'/>
    <p n='uses' v='org.dom4j,org.dom4j.rule'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.dom4j.io'/>
    <p n='uses' v='javax.xml.stream.events,org.xml.sax,org.dom4j.xpp,javax.xml.namespace,org.w3c.dom,org.dom4j.tree,org.dom4j,javax.xml.transform.sax,org.gjt.xpp,org.xmlpull.v1,org.xml.sax.ext,javax.xml.parsers,org.xml.sax.helpers,org.dom4j.dtd,javax.xml.stream.util,javax.xml.stream'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.dom4j.swing'/>
    <p n='uses' v='org.dom4j,org.jaxen,javax.swing.tree,javax.swing.table'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.dom4j.xpp'/>
    <p n='uses' v='org.dom4j,org.gjt.xpp,org.dom4j.tree'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.dom4j.tree'/>
    <p n='uses' v='org.dom4j,org.dom4j.io,org.xml.sax,org.dom4j.rule'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.dom4j.util'/>
    <p n='uses' v='org.dom4j,org.xml.sax,org.jaxen,org.dom4j.rule,org.dom4j.tree'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.dom4j'/>
    <p n='uses' v='org.dom4j.util,org.dom4j.io,org.dom4j.xpath,org.xml.sax,org.jaxen,org.dom4j.rule,org.dom4j.tree'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.dom4j.xpath'/>
    <p n='uses' v='org.jaxen.pattern,org.dom4j,org.jaxen.dom4j,org.jaxen,org.dom4j.rule,org.jaxen.saxpath'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.dom4j.jaxb'/>
    <p n='uses' v='org.dom4j,org.dom4j.io,org.xml.sax,org.w3c.dom,javax.xml.transform.stream,javax.xml.bind,org.dom4j.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.dom4j.dtd'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.dom4j.bean'/>
    <p n='uses' v='org.dom4j,org.xml.sax,org.dom4j.tree'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.dom4j.dom'/>
    <p n='uses' v='org.dom4j.util,org.dom4j,org.w3c.dom,org.dom4j.tree'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.dom4j.rule'/>
    <p n='uses' v='org.dom4j.rule.pattern,org.dom4j,org.jaxen'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.msv.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.datatype
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.msv.datatype.xsd)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.datatype.xsd
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.table)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.table
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.tree
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.bean)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j.bean ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.datatype)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j.datatype ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.dom)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j.dom ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.dtd)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j.dtd ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.io)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j.io ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.jaxb)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j.jaxb ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.rule)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j.rule ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.rule.pattern)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j.rule.pattern ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.swing)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j.swing ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.tree)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j.tree ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.util)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j.util ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.xpath)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j.xpath ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.xpp)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j.xpp ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.gjt.xpp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.gjt.xpp
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.dom4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.dom4j
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.pattern)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.pattern
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.saxpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.saxpath
  </require>
  <require extend='false' filter='(&amp;(package=org.relaxng.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.relaxng.datatype
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.v1)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xmlpull.v1
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.velocity/1.6.2.1' presentationname='Apache ServiceMix Bundles: velocity-1.6.2' symbolicname='org.apache.servicemix.bundles.velocity' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.velocity/1.6.2_1/org.apache.servicemix.bundles.velocity-1.6.2_1.jar' version='1.6.2.1'>
  <description>
    This bundle simply wraps velocity-1.6.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    430191
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: velocity-1.6.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.velocity'/>
    <p n='version' t='version' v='1.6.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.texen'/>
    <p n='uses' v='org.apache.velocity,org.apache.velocity.util,org.apache.velocity.context,org.apache.velocity.app'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.resource.util'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.util.introspection'/>
    <p n='uses' v='org.apache.velocity.runtime.log,org.apache.velocity.runtime,org.apache.commons.collections,org.apache.velocity.util,org.apache.velocity.runtime.parser.node,org.apache.commons.lang.text'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.anakia'/>
    <p n='uses' v='org.jdom.output,org.apache.commons.collections,com.werken.xpath,org.jdom.input,org.apache.velocity.context,org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.xml.sax,org.apache.velocity,org.apache.velocity.util,org.jdom,org.apache.velocity.app'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.servlet'/>
    <p n='uses' v='org.apache.velocity.runtime,org.apache.velocity.exception,org.apache.velocity.context,javax.servlet,org.apache.velocity,org.apache.velocity.util,org.apache.velocity.io,org.apache.velocity.app,javax.servlet.http'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.context'/>
    <p n='uses' v='org.apache.velocity.runtime.log,org.apache.velocity.runtime,org.apache.velocity.exception,org.apache.velocity.util,org.apache.velocity.util.introspection,org.apache.velocity.runtime.resource,org.apache.velocity.app.event,org.apache.velocity.runtime.parser.node'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.parser.node'/>
    <p n='uses' v='org.apache.velocity.runtime.directive,org.apache.velocity.runtime,org.apache.velocity.runtime.parser,org.apache.velocity.exception,org.apache.velocity.util.introspection,org.apache.velocity.context,org.apache.commons.lang,org.apache.velocity.runtime.log,org.apache.commons.lang.builder,org.apache.velocity.util,org.apache.velocity.app.event,org.apache.commons.lang.text'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.texen.defaults'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.io'/>
    <p n='uses' v='org.apache.velocity.util'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.app'/>
    <p n='uses' v='org.apache.velocity.runtime.log,org.apache.velocity.runtime,org.apache.commons.collections,org.apache.velocity,org.apache.velocity.exception,org.apache.velocity.util,org.apache.velocity.context'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.texen.util'/>
    <p n='uses' v='org.apache.velocity.texen'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.directive'/>
    <p n='uses' v='org.apache.velocity.runtime,org.apache.velocity.runtime.parser,org.apache.commons.collections,org.apache.velocity.exception,org.apache.velocity.util.introspection,org.apache.velocity.context,org.apache.velocity.runtime.parser.node,org.apache.commons.lang,org.apache.velocity.runtime.log,org.apache.velocity,org.apache.velocity.runtime.resource,org.apache.velocity.app.event,org.apache.commons.lang.text'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.app.event.implement'/>
    <p n='uses' v='org.apache.velocity.runtime,org.apache.commons.collections,org.apache.velocity.util.introspection,org.apache.velocity.exception,org.apache.velocity.context,org.apache.oro.text.perl,org.apache.commons.lang,org.apache.velocity.runtime.log,org.apache.velocity.util,org.apache.velocity.app.event'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime'/>
    <p n='uses' v='org.apache.velocity.runtime.directive,org.apache.velocity.runtime.parser,org.apache.commons.collections,org.apache.velocity.util.introspection,org.apache.velocity.exception,org.apache.velocity.context,org.apache.velocity.runtime.parser.node,org.apache.commons.lang,org.apache.velocity.runtime.log,org.apache.velocity,org.apache.velocity.util,org.apache.velocity.app.event,org.apache.velocity.runtime.resource,org.apache.velocity.runtime.resource.loader,org.apache.commons.lang.text'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.defaults'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.parser'/>
    <p n='uses' v='org.apache.velocity.runtime.directive,org.apache.velocity.runtime.log,org.apache.velocity.runtime,org.apache.velocity.exception,org.apache.velocity.runtime.parser.node'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.convert'/>
    <p n='uses' v='org.apache.velocity.util,org.apache.oro.text.perl,org.apache.tools.ant'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.exception'/>
    <p n='uses' v='org.apache.velocity.runtime.log,org.apache.velocity.runtime.parser,org.apache.velocity.util,org.apache.velocity.util.introspection'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.visitor'/>
    <p n='uses' v='org.apache.velocity.runtime.parser,org.apache.velocity.context,org.apache.velocity.runtime.parser.node'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.texen.ant'/>
    <p n='uses' v='org.apache.velocity.texen,org.apache.commons.collections,org.apache.velocity,org.apache.velocity.exception,org.apache.velocity.util,org.apache.velocity.context,org.apache.velocity.app,org.apache.tools.ant'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.log'/>
    <p n='uses' v='org.apache.velocity.runtime.directive,org.apache.velocity.runtime,org.apache.commons.logging,org.apache.log4j,org.apache.velocity.exception,org.apache.velocity.util.introspection,org.apache.log.output.io,org.apache.log.format,org.apache.velocity.runtime.parser.node,org.apache.commons.lang,javax.servlet,org.apache.log,org.apache.velocity.util'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity'/>
    <p n='uses' v='org.apache.velocity.runtime.log,org.apache.velocity.runtime,org.apache.velocity.runtime.parser,org.apache.velocity.exception,org.apache.velocity.context,org.apache.velocity.runtime.resource,org.apache.velocity.runtime.resource.loader,org.apache.velocity.runtime.parser.node'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.util'/>
    <p n='uses' v='org.apache.velocity.runtime,org.apache.velocity.context'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.resource'/>
    <p n='uses' v='org.apache.velocity.runtime,org.apache.commons.collections,org.apache.velocity.exception,org.apache.commons.lang,org.apache.velocity.runtime.log,org.apache.commons.collections.map,org.apache.velocity,org.apache.velocity.util,org.apache.velocity.runtime.resource.loader'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.app.event'/>
    <p n='uses' v='org.apache.velocity.runtime,org.apache.velocity.util.introspection,org.apache.velocity.util,org.apache.velocity.context'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.app.tools'/>
    <p n='uses' v='org.apache.velocity.context'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.resource.loader'/>
    <p n='uses' v='org.apache.velocity.runtime,javax.naming,org.apache.velocity.runtime.resource.util,org.apache.commons.collections,org.apache.velocity.exception,org.apache.commons.lang,org.apache.velocity.runtime.log,javax.sql,org.apache.velocity.util,org.apache.velocity.io,org.apache.velocity.runtime.resource'/>
    <p n='version' t='version' v='1.6.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.werken.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.werken.xpath
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections)(version&gt;=3.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections ;version=3.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.map)(version&gt;=3.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.map ;version=3.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.lang ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.lang.builder ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.text)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.lang.text ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log.format)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log.format
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log.output.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log.output.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.oro.text.perl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.oro.text.perl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.anakia)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.anakia ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.app ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app.event)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.app.event ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app.event.implement)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.app.event.implement ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app.tools)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.app.tools ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.context ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.convert)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.convert ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.exception)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.exception ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.io)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.io ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.defaults)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.defaults ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.directive)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.directive ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.log)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.log ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.parser)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.parser ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.parser.node)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.parser.node ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.resource)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.resource ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.resource.loader)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.resource.loader
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.resource.util)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.resource.util ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.visitor)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.visitor ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.servlet)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.servlet ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.texen)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.texen ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.texen.ant)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.texen.ant ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.texen.defaults)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.texen.defaults ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.texen.util)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.texen.util ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.util)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.util ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.util.introspection)(version&gt;=1.6.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.util.introspection ;version=1.6.2
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.velocity/1.5.0.1' presentationname='Apache ServiceMix Bundles: velocity-1.5' symbolicname='org.apache.servicemix.bundles.velocity' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.velocity/1.5_1/org.apache.servicemix.bundles.velocity-1.5_1.jar' version='1.5.0.1'>
  <description>
    This bundle simply wraps velocity-1.5.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    401020
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: velocity-1.5'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.velocity'/>
    <p n='version' t='version' v='1.5.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.resource.util'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime'/>
    <p n='uses' v='org.apache.velocity.runtime.parser.node,org.apache.velocity.runtime.parser,org.apache.velocity.util.introspection,org.apache.velocity.runtime.resource,org.apache.velocity.runtime.directive,org.apache.commons.lang,org.apache.commons.collections,org.apache.velocity.exception,org.apache.velocity.runtime.resource.loader,org.apache.velocity.util,org.apache.velocity.runtime.log,org.apache.velocity.app.event,org.apache.velocity.context,org.apache.velocity'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.anakia'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.xml.sax,org.apache.tools.ant,org.jdom,org.apache.commons.collections,com.werken.xpath,org.jdom.input,org.apache.velocity.util,org.apache.velocity.app,org.apache.velocity,org.apache.velocity.context,org.jdom.output'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.parser'/>
    <p n='uses' v='org.apache.velocity.exception,org.apache.velocity.runtime,org.apache.velocity.runtime.parser.node,org.apache.velocity.runtime.log,org.apache.velocity.runtime.directive'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.io'/>
    <p n='uses' v='org.apache.velocity.util'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.resource'/>
    <p n='uses' v='org.apache.velocity.runtime,org.apache.commons.lang,org.apache.commons.collections,org.apache.commons.collections.map,org.apache.velocity.exception,org.apache.velocity.runtime.resource.loader,org.apache.velocity.util,org.apache.velocity.runtime.log,org.apache.velocity'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.directive'/>
    <p n='uses' v='org.apache.velocity.runtime.parser.node,org.apache.velocity.runtime,org.apache.velocity.runtime.visitor,org.apache.velocity.runtime.parser,org.apache.velocity.util.introspection,org.apache.velocity.runtime.resource,org.apache.commons.lang,org.apache.commons.collections,org.apache.velocity.exception,org.apache.velocity.runtime.log,org.apache.velocity.app.event,org.apache.velocity,org.apache.velocity.context'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.resource.loader'/>
    <p n='uses' v='org.apache.velocity.runtime.resource.util,org.apache.velocity.runtime,org.apache.velocity.io,org.apache.velocity.runtime.resource,org.apache.commons.lang,org.apache.commons.collections,javax.sql,org.apache.velocity.exception,org.apache.velocity.util,javax.naming,org.apache.velocity.runtime.log'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.app.event'/>
    <p n='uses' v='org.apache.velocity.runtime,org.apache.velocity.util,org.apache.velocity.context,org.apache.velocity.util.introspection'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.app'/>
    <p n='uses' v='org.apache.velocity.runtime.parser.node,org.apache.velocity.runtime,org.apache.velocity.runtime.parser,org.apache.commons.collections,org.apache.velocity.exception,org.apache.velocity.util,org.apache.velocity.runtime.log,org.apache.velocity.context,org.apache.velocity'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.context'/>
    <p n='uses' v='org.apache.velocity.exception,org.apache.velocity.runtime,org.apache.velocity.app.event,org.apache.velocity.util.introspection,org.apache.velocity.runtime.resource,org.apache.velocity.runtime.directive'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity'/>
    <p n='uses' v='org.apache.velocity.exception,org.apache.velocity.runtime.resource.loader,org.apache.velocity.runtime.parser.node,org.apache.velocity.runtime,org.apache.velocity.runtime.parser,org.apache.velocity.context,org.apache.velocity.runtime.resource'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.parser.node'/>
    <p n='uses' v='org.apache.velocity.runtime,org.apache.commons.lang.builder,org.apache.velocity.runtime.parser,org.apache.velocity.util.introspection,org.apache.velocity.runtime.directive,org.apache.commons.lang,org.apache.velocity.exception,org.apache.velocity.util,org.apache.velocity.runtime.log,org.apache.velocity.app.event,org.apache.velocity.context'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.visitor'/>
    <p n='uses' v='org.apache.velocity.runtime.parser.node,org.apache.velocity.runtime.parser,org.apache.velocity.context'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.texen.ant'/>
    <p n='uses' v='org.apache.velocity.exception,org.apache.velocity.util,org.apache.tools.ant,org.apache.velocity.app,org.apache.velocity,org.apache.velocity.context,org.apache.velocity.texen,org.apache.commons.collections'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.app.event.implement'/>
    <p n='uses' v='org.apache.velocity.runtime,org.apache.velocity.util.introspection,org.apache.commons.lang,org.apache.commons.collections,org.apache.velocity.exception,org.apache.velocity.util,org.apache.velocity.runtime.log,org.apache.velocity.app.event,org.apache.velocity.context,org.apache.oro.text.perl'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.texen.defaults'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.app.tools'/>
    <p n='uses' v='org.apache.velocity.context'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.util.introspection'/>
    <p n='uses' v='org.apache.velocity.runtime.parser.node,org.apache.velocity.runtime,org.apache.velocity.util,org.apache.velocity.runtime.log,org.apache.commons.collections'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.velocity.runtime,org.apache.velocity.io,org.apache.velocity.exception,javax.servlet,org.apache.velocity.util,org.apache.velocity.app,org.apache.velocity,org.apache.velocity.context'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.exception'/>
    <p n='uses' v='org.apache.velocity.util,org.apache.velocity.runtime.parser,org.apache.velocity.util.introspection,org.apache.commons.lang'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.util'/>
    <p n='uses' v='org.apache.velocity.runtime,org.apache.velocity.context'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.log'/>
    <p n='uses' v='org.apache.log4j,org.apache.velocity.runtime,org.apache.velocity.util,org.apache.log.format,org.apache.log,org.apache.log.output.io,org.apache.commons.lang'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.runtime.defaults'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.convert'/>
    <p n='uses' v='org.apache.velocity.util,org.apache.tools.ant,org.apache.oro.text.perl'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.texen'/>
    <p n='uses' v='org.apache.velocity.util,org.apache.velocity.app,org.apache.velocity,org.apache.velocity.context'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.velocity.texen.util'/>
    <p n='uses' v='org.apache.velocity.texen'/>
    <p n='version' t='version' v='1.5.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.werken.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.werken.xpath
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.map)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.map
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.lang
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.lang.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log.format)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log.format
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log.output.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log.output.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.oro.text.perl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.oro.text.perl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.anakia)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.anakia ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.app ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app.event)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.app.event ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app.event.implement)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.app.event.implement ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app.tools)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.app.tools ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.context ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.convert)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.convert ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.exception)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.exception ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.io)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.io ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.defaults)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.defaults ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.directive)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.directive ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.log)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.log ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.parser)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.parser ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.parser.node)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.parser.node ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.resource)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.resource ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.resource.loader)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.resource.loader
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.resource.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.resource.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.runtime.visitor)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.runtime.visitor ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.servlet)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.servlet ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.texen)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.texen ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.texen.ant)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.texen.ant ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.texen.defaults)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.texen.defaults ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.texen.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.texen.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.util)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.util ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.util.introspection)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.velocity.util.introspection ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.antlr/3.0.1.1' presentationname='Apache ServiceMix Bundles: antlr-3.0.1' symbolicname='org.apache.servicemix.bundles.antlr' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.antlr/3.0.1_1/org.apache.servicemix.bundles.antlr-3.0.1_1.jar' version='3.0.1.1'>
  <description>
    This bundle simply wraps antlr-3.0.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    453354
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: antlr-3.0.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.antlr'/>
    <p n='version' t='version' v='3.0.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='antlr.actions.java'/>
    <p n='uses' v='antlr.collections.impl,antlr'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='antlr.actions.csharp'/>
    <p n='uses' v='antlr.collections.impl,antlr'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='antlr.debug'/>
    <p n='uses' v='antlr.collections,antlr.collections.impl,antlr'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='antlr.collections'/>
    <p n='uses' v='antlr'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='antlr.actions.python'/>
    <p n='uses' v='antlr.collections.impl,antlr'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='antlr.build'/>
    <p n='uses' v='antlr'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='antlr.debug.misc'/>
    <p n='uses' v='javax.swing.event,javax.swing.tree,antlr.collections,javax.swing,antlr'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='antlr.actions.cpp'/>
    <p n='uses' v='antlr.collections.impl,antlr'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='antlr.preprocessor'/>
    <p n='uses' v='antlr.collections.impl,antlr'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='antlr.collections.impl'/>
    <p n='uses' v='antlr.collections,antlr'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='antlr'/>
    <p n='uses' v='antlr.actions.java,antlr.actions.csharp,antlr.debug,antlr.actions.python,antlr.collections.impl,antlr.ASdebug,antlr.collections,antlr.actions.cpp,antlr.preprocessor'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='antlr.ASdebug'/>
    <p n='uses' v='antlr'/>
    <p n='version' t='version' v='3.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=antlr)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package antlr ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=antlr.ASdebug)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package antlr.ASdebug ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=antlr.actions.cpp)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package antlr.actions.cpp ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=antlr.actions.csharp)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package antlr.actions.csharp ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=antlr.actions.java)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package antlr.actions.java ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=antlr.actions.python)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package antlr.actions.python ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=antlr.build)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package antlr.build ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package antlr.collections ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections.impl)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package antlr.collections.impl ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=antlr.debug)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package antlr.debug ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=antlr.debug.misc)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package antlr.debug.misc ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=antlr.preprocessor)(version&gt;=3.0.1))' multiple='false' name='package' optional='false'>
    Import package antlr.preprocessor ;version=3.0.1
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing.event
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing.tree
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.freemarker/2.3.15.1' presentationname='Apache ServiceMix Bundles: freemarker-2.3.15' symbolicname='org.apache.servicemix.bundles.freemarker' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.freemarker/2.3.15_1/org.apache.servicemix.bundles.freemarker-2.3.15_1.jar' version='2.3.15.1'>
  <description>
    This bundle simply wraps freemarker-2.3.15.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    898039
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: freemarker-2.3.15'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.freemarker'/>
    <p n='version' t='version' v='2.3.15.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker.debug'/>
    <p n='uses' v='freemarker.template.utility,freemarker.debug.impl,freemarker.template'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker.cache'/>
    <p n='uses' v='javax.servlet,freemarker.template.utility,freemarker.log,freemarker.core,freemarker.template'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker.ext.dom'/>
    <p n='uses' v='org.apache.xml.utils,freemarker.cache,javax.xml.parsers,org.apache.xpath.objects,org.w3c.dom.traversal,org.w3c.dom,org.xml.sax,com.sun.org.apache.xpath.internal.objects,freemarker.template.utility,freemarker.log,org.apache.xpath,javax.xml.transform,freemarker.core,org.jaxen,org.jaxen.dom,freemarker.template,freemarker.ext.util,com.sun.org.apache.xml.internal.utils,com.sun.org.apache.xpath.internal'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker.ext.xml'/>
    <p n='uses' v='org.dom4j.tree,org.jaxen.dom4j,org.jaxen.jdom,org.jdom.output,org.dom4j,org.w3c.dom,freemarker.template.utility,freemarker.log,org.jaxen,org.jdom,org.jaxen.dom,freemarker.template'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker.ext.jython'/>
    <p n='uses' v='freemarker.template.utility,freemarker.ext.beans,org.python.core,freemarker.template,freemarker.ext.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker.ext.jdom'/>
    <p n='uses' v='freemarker.template.utility,org.jaxen.jdom,org.jdom.output,org.jdom.input,org.jaxen,org.jdom,freemarker.template'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker.ext.beans'/>
    <p n='uses' v='freemarker.template.utility,freemarker.log,freemarker.core,freemarker.template,org.zeroturnaround.javarebel,freemarker.ext.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker.template.utility'/>
    <p n='uses' v='org.python.core,org.w3c.dom,freemarker.ext.beans,freemarker.log,freemarker.core,freemarker.template,freemarker.ext.util,org.python.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker.ext.jsp'/>
    <p n='uses' v='org.xml.sax,javax.servlet,freemarker.ext.beans,freemarker.core,javax.servlet.jsp.tagext,freemarker.ext.servlet,freemarker.ext.util,javax.el,javax.xml.parsers,javax.servlet.jsp,freemarker.template.utility,freemarker.log,javax.servlet.jsp.el,freemarker.template,org.xml.sax.helpers,javax.servlet.http'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker.log'/>
    <p n='uses' v='freemarker.template.utility,org.apache.log,org.apache.log4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker.ext.rhino'/>
    <p n='uses' v='freemarker.ext.beans,org.mozilla.javascript,freemarker.template,freemarker.ext.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker.debug.impl'/>
    <p n='uses' v='javax.swing.tree,freemarker.debug,freemarker.cache,freemarker.template.utility,freemarker.log,freemarker.core,freemarker.template,freemarker.ext.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker.core'/>
    <p n='uses' v='javax.swing.tree,freemarker.cache,freemarker.ext.jython,freemarker.template.utility,freemarker.ext.beans,freemarker.log,javax.swing,freemarker.debug.impl,freemarker.template'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker.ext.servlet'/>
    <p n='uses' v='freemarker.cache,freemarker.ext.jython,javax.servlet,freemarker.template.utility,freemarker.log,freemarker.ext.jsp,freemarker.core,freemarker.template,javax.servlet.http'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker.template'/>
    <p n='uses' v='javax.swing.tree,freemarker.cache,freemarker.ext.dom,freemarker.ext.jython,org.w3c.dom,freemarker.template.utility,freemarker.ext.beans,freemarker.debug.impl,freemarker.core'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker.ext.ant'/>
    <p n='uses' v='freemarker.ext.dom,javax.xml.parsers,org.apache.tools.ant.taskdefs,freemarker.ext.xml,org.apache.tools.ant,org.w3c.dom,org.xml.sax,freemarker.template.utility,freemarker.core,freemarker.template,org.python.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='freemarker.ext.util'/>
    <p n='uses' v='freemarker.template'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.utils
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.objects)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.objects
  </require>
  <require extend='false' filter='(&amp;(package=freemarker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.cache)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.cache
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.core
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.debug)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.debug
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.debug.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.debug.impl
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.ext.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.ext.ant
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.ext.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.ext.beans
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.ext.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.ext.dom
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.ext.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.ext.jdom
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.ext.jsp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.ext.jsp
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.ext.jython)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.ext.jython
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.ext.rhino)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.ext.rhino
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.ext.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.ext.servlet
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.ext.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.ext.util
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.ext.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.ext.xml
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.log
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.template)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.template
  </require>
  <require extend='false' filter='(&amp;(package=freemarker.template.utility)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package freemarker.template.utility
  </require>
  <require extend='false' filter='(&amp;(package=javax.el)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.el
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.el)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp.el
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.tagext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp.tagext
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.tree
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xml.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath.objects)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xpath.objects
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j.tree
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.dom4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.dom4j
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.python.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.python.core
  </require>
  <require extend='false' filter='(&amp;(package=org.python.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.python.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.zeroturnaround.javarebel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.zeroturnaround.javarebel
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.stringtemplate/3.2.0.1' presentationname='Apache ServiceMix Bundles: stringtemplate-3.2' symbolicname='org.apache.servicemix.bundles.stringtemplate' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.stringtemplate/3.2_1/org.apache.servicemix.bundles.stringtemplate-3.2_1.jar' version='3.2.0.1'>
  <description>
    This bundle simply wraps stringtemplate-3.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    180567
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: stringtemplate-3.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.stringtemplate'/>
    <p n='version' t='version' v='3.2.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.antlr.stringtemplate'/>
    <p n='uses' v='antlr.collections,org.antlr.stringtemplate.language,antlr'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.antlr.stringtemplate.test'/>
    <p n='uses' v='org.antlr.stringtemplate,org.antlr.stringtemplate.language,junit.framework'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.antlr.stringtemplate.language'/>
    <p n='uses' v='org.antlr.stringtemplate,antlr.collections,antlr.collections.impl,antlr'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.antlr.stringtemplate.misc'/>
    <p n='uses' v='javax.swing.tree,org.antlr.stringtemplate,javax.swing.event,antlr.collections,org.antlr.stringtemplate.language,javax.swing'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=antlr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package antlr
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package antlr.collections
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package antlr.collections.impl
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.event
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.tree
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.antlr.stringtemplate)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.antlr.stringtemplate
  </require>
  <require extend='false' filter='(&amp;(package=org.antlr.stringtemplate.language)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.antlr.stringtemplate.language
  </require>
  <require extend='false' filter='(&amp;(package=org.antlr.stringtemplate.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.antlr.stringtemplate.misc
  </require>
  <require extend='false' filter='(&amp;(package=org.antlr.stringtemplate.test)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.antlr.stringtemplate.test
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.xmlschema-1.3.2/4.0.0.m1' presentationname='Apache ServiceMix OSGI Common Bundles: xmlschema' symbolicname='org.apache.servicemix.bundles.xmlschema-1.3.2' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.xmlschema-1.3.2/4.0-m1/org.apache.servicemix.bundles.xmlschema-1.3.2-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    This bundle simply wraps xmlschema-1.3.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    136106
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: xmlschema'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.xmlschema-1.3.2'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.commons.schema.resolver'/>
    <p n='uses' v='org.xml.sax'/>
    <p n='version' t='version' v='1.3.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.commons.schema.utils'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='1.3.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.commons.schema'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.transform,org.apache.ws.commons.schema.extensions,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils,javax.xml.parsers,org.apache.ws.commons.schema.constants,javax.xml.transform.stream'/>
    <p n='version' t='version' v='1.3.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.commons.schema.constants'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='1.3.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.commons.schema.extensions'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='1.3.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.3.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.3.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.3.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.3.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.3.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.3.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.3.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.3.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.3.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.3.2
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.commons-net/1.4.1.1' presentationname='Apache ServiceMix Bundles: commons-net-1.4.1' symbolicname='org.apache.servicemix.bundles.commons-net' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-net/1.4.1_1/org.apache.servicemix.bundles.commons-net-1.4.1_1.jar' version='1.4.1.1'>
  <description>
    This bundle simply wraps commons-net-1.4.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    184412
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: commons-net-1.4.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.commons-net'/>
    <p n='version' t='version' v='1.4.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.net.smtp'/>
    <p n='uses' v='org.apache.commons.net.io,org.apache.commons.net'/>
    <p n='version' t='version' v='1.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.net.ntp'/>
    <p n='uses' v='org.apache.commons.net'/>
    <p n='version' t='version' v='1.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.net.bsd'/>
    <p n='uses' v='org.apache.commons.net.io,org.apache.commons.net'/>
    <p n='version' t='version' v='1.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.net.io'/>
    <p n='uses' v='org.apache.commons.net.util'/>
    <p n='version' t='version' v='1.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.net.ftp'/>
    <p n='uses' v='org.apache.commons.net.io,org.apache.commons.net.telnet,org.apache.commons.net.ftp.parser,org.apache.commons.net'/>
    <p n='version' t='version' v='1.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.net.telnet'/>
    <p n='uses' v='org.apache.commons.net.io,org.apache.commons.net'/>
    <p n='version' t='version' v='1.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.net.pop3'/>
    <p n='uses' v='org.apache.commons.net.io,org.apache.commons.net'/>
    <p n='version' t='version' v='1.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.net.ftp.parser'/>
    <p n='uses' v='org.apache.commons.net.ftp,org.apache.oro.text.regex'/>
    <p n='version' t='version' v='1.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.net.nntp'/>
    <p n='uses' v='org.apache.commons.net.io,org.apache.commons.net'/>
    <p n='version' t='version' v='1.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.net.util'/>
    <p n='version' t='version' v='1.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.net.tftp'/>
    <p n='uses' v='org.apache.commons.net.io,org.apache.commons.net'/>
    <p n='version' t='version' v='1.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.net'/>
    <p n='uses' v='org.apache.commons.net.util'/>
    <p n='version' t='version' v='1.4.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net)(version&gt;=1.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net ;version=1.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.bsd)(version&gt;=1.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net.bsd ;version=1.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.ftp)(version&gt;=1.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net.ftp ;version=1.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.ftp.parser)(version&gt;=1.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net.ftp.parser ;version=1.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.io)(version&gt;=1.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net.io ;version=1.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.nntp)(version&gt;=1.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net.nntp ;version=1.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.ntp)(version&gt;=1.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net.ntp ;version=1.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.pop3)(version&gt;=1.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net.pop3 ;version=1.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.smtp)(version&gt;=1.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net.smtp ;version=1.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.telnet)(version&gt;=1.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net.telnet ;version=1.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.tftp)(version&gt;=1.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net.tftp ;version=1.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.util)(version&gt;=1.4.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net.util ;version=1.4.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.oro.text.regex)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.oro.text.regex
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.smack/3.0.4.1' presentationname='Apache ServiceMix Bundles: smack-3.0.4' symbolicname='org.apache.servicemix.bundles.smack' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.smack/3.0.4_1/org.apache.servicemix.bundles.smack-3.0.4_1.jar' version='3.0.4.1'>
  <description>
    This bundle simply wraps smack-3.0.4.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    687276
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: smack-3.0.4'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.smack'/>
    <p n='version' t='version' v='3.0.4.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smack.packet'/>
    <p n='uses' v='org.jivesoftware.smack.util'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smackx.provider'/>
    <p n='uses' v='org.jivesoftware.smackx.packet,org.jivesoftware.smack.packet,org.w3c.dom,org.jivesoftware.smackx,org.xmlpull.v1,javax.xml.parsers,org.jivesoftware.smack.provider,org.jivesoftware.smack.util'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smackx.search'/>
    <p n='uses' v='org.jivesoftware.smackx.packet,org.jivesoftware.smack.filter,org.jivesoftware.smackx,org.jivesoftware.smack.packet,org.xmlpull.v1,org.jivesoftware.smack,org.jivesoftware.smack.provider,org.jivesoftware.smack.util'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smackx.filetransfer'/>
    <p n='uses' v='org.jivesoftware.smackx.packet,org.jivesoftware.smackx,org.jivesoftware.smack.filter,org.jivesoftware.smack.packet,org.jivesoftware.smack.util,org.jivesoftware.smack'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smack.util.collections'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smackx.workgroup.ext.history'/>
    <p n='uses' v='org.jivesoftware.smack.packet,org.xmlpull.v1,org.jivesoftware.smack.provider,org.jivesoftware.smackx.workgroup.util'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smack.provider'/>
    <p n='uses' v='org.jivesoftware.smack.packet,org.xmlpull.mxp1,org.xmlpull.v1'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smackx.muc'/>
    <p n='uses' v='org.jivesoftware.smackx.packet,org.jivesoftware.smack.filter,org.jivesoftware.smackx,org.jivesoftware.smack.packet,org.jivesoftware.smack.util,org.jivesoftware.smack'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smackx.packet'/>
    <p n='uses' v='org.jivesoftware.smack.packet,org.jivesoftware.smack,org.jivesoftware.smackx,org.jivesoftware.smack.filter,org.xmlpull.v1,org.jivesoftware.smack.provider,org.jivesoftware.smack.util'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smackx.bookmark'/>
    <p n='uses' v='org.jivesoftware.smackx.packet,org.jivesoftware.smackx,org.jivesoftware.smackx.provider,org.xmlpull.v1,org.jivesoftware.smack'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smack.sasl'/>
    <p n='uses' v='org.jivesoftware.smack.util,org.jivesoftware.smack,javax.security.sasl,javax.security.auth.callback'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smackx.workgroup'/>
    <p n='uses' v='org.jivesoftware.smack.packet,org.jivesoftware.smackx.workgroup.util'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smackx.workgroup.ext.notes'/>
    <p n='uses' v='org.jivesoftware.smack.packet,org.xmlpull.v1,org.jivesoftware.smack.provider'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smack'/>
    <p n='uses' v='org.jivesoftware.smack.sasl,org.jivesoftware.smack.packet,org.xmlpull.mxp1,org.jivesoftware.smack.debugger,org.jivesoftware.smack.filter,org.jivesoftware.smack.util.collections,org.xmlpull.v1,org.jivesoftware.smack.provider,org.jivesoftware.smack.util,javax.net,javax.net.ssl'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smackx.workgroup.ext.macros'/>
    <p n='uses' v='org.jivesoftware.smack.packet,org.xmlpull.v1,org.jivesoftware.smack.provider'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smackx.workgroup.util'/>
    <p n='uses' v='org.xmlpull.v1,org.jivesoftware.smack.util'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smackx.workgroup.user'/>
    <p n='uses' v='org.jivesoftware.smackx.packet,org.jivesoftware.smack.packet,org.jivesoftware.smackx.workgroup,org.jivesoftware.smack,org.jivesoftware.smackx.workgroup.packet,org.jivesoftware.smackx.workgroup.ext.forms,org.jivesoftware.smackx.workgroup.settings,org.jivesoftware.smackx,org.jivesoftware.smack.filter,org.jivesoftware.smack.util,org.jivesoftware.smackx.muc'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smackx.workgroup.packet'/>
    <p n='uses' v='org.jivesoftware.smackx.workgroup,org.jivesoftware.smack.packet,org.jivesoftware.smackx.workgroup.agent,org.xmlpull.v1,org.jivesoftware.smack.util,org.jivesoftware.smack.provider,org.jivesoftware.smackx.workgroup.util'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smackx.workgroup.ext.forms'/>
    <p n='uses' v='org.jivesoftware.smack.packet,org.xmlpull.v1,org.jivesoftware.smack.provider,org.jivesoftware.smack.util'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smackx.workgroup.settings'/>
    <p n='uses' v='org.jivesoftware.smack.packet,org.xmlpull.v1,org.jivesoftware.smack.util,org.jivesoftware.smack.provider,org.jivesoftware.smackx.workgroup.util'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smack.debugger'/>
    <p n='uses' v='org.jivesoftware.smack.packet,org.jivesoftware.smack.util,org.jivesoftware.smack,javax.swing'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smack.filter'/>
    <p n='uses' v='org.jivesoftware.smack.packet,org.jivesoftware.smack.util'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smackx'/>
    <p n='uses' v='org.jivesoftware.smackx.packet,org.jivesoftware.smack.packet,org.jivesoftware.smackx.provider,org.jivesoftware.smack,org.jivesoftware.smack.filter,org.jivesoftware.smack.util.collections,org.xmlpull.v1,org.jivesoftware.smack.util,org.jivesoftware.smack.provider'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smackx.workgroup.agent'/>
    <p n='uses' v='org.jivesoftware.smackx.packet,org.jivesoftware.smack.packet,org.jivesoftware.smackx.workgroup,org.jivesoftware.smackx.workgroup.ext.notes,org.jivesoftware.smack,org.jivesoftware.smackx.workgroup.ext.macros,org.jivesoftware.smackx.workgroup.packet,org.jivesoftware.smackx.workgroup.settings,org.jivesoftware.smackx,org.jivesoftware.smack.filter,org.jivesoftware.smackx.workgroup.ext.history,org.xmlpull.v1,org.jivesoftware.smack.provider,org.jivesoftware.smack.util'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jivesoftware.smack.util'/>
    <p n='uses' v='org.jivesoftware.smack.packet,javax.naming.directory,org.jivesoftware.smack.util.collections,org.xmlpull.v1,org.jivesoftware.smack.provider'/>
    <p n='version' t='version' v='3.0.4'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming.directory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.directory
  </require>
  <require extend='false' filter='(&amp;(package=javax.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.sasl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.sasl
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.debugger)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.debugger ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.filter)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.filter ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.packet)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.packet ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.provider)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.provider ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.sasl)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.sasl ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.util)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.util ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.util.collections)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.util.collections ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.bookmark)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.bookmark ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.filetransfer)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.filetransfer ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.muc)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.muc ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.packet)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.packet ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.provider)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.provider ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.search)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.search ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.workgroup)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.workgroup ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.workgroup.agent)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.workgroup.agent ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.workgroup.ext.forms)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.workgroup.ext.forms
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.workgroup.ext.history)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.workgroup.ext.history
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.workgroup.ext.macros)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.workgroup.ext.macros
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.workgroup.ext.notes)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.workgroup.ext.notes
    
    
    
    
    
    
    
    
    
    
    
     ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.workgroup.packet)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.workgroup.packet ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.workgroup.settings)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.workgroup.settings ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.workgroup.user)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.workgroup.user ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smackx.workgroup.util)(version&gt;=3.0.4))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smackx.workgroup.util ;version=3.0.4
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.mxp1)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xmlpull.mxp1
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.v1)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xmlpull.v1
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.ant/1.7.0.1' presentationname='Apache ServiceMix Bundles: ant-1.7.0' symbolicname='org.apache.servicemix.bundles.ant' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.ant/1.7.0_1/org.apache.servicemix.bundles.ant-1.7.0_1.jar' version='1.7.0.1'>
  <description>
    This bundle simply wraps ant-1.7.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1312103
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: ant-1.7.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.ant'/>
    <p n='version' t='version' v='1.7.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.util.facade'/>
    <p n='uses' v='org.apache.tools.ant.types'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.resources.comparators'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.condition'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors,org.apache.tools.ant.util,org.apache.tools.zip'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.rmic'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.tools.ant.util,sun.rmi.rmic'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs'/>
    <p n='uses' v='org.apache.tools.ant.util.facade,org.apache.tools.ant.types.resources.comparators,org.apache.tools.ant.taskdefs.rmic,org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types,org.apache.tools.ant.filters,org.apache.tools.ant.types.selectors,org.apache.tools.ant.launch,org.apache.tools.bzip2,org.apache.tools.ant.types.selectors.modifiedselector,org.apache.tools.ant.taskdefs.compilers,org.apache.tools.ant.util,org.apache.tools.zip,javax.xml.parsers,org.apache.tools.ant.helper,org.apache.tools.ant.types.spi,org.apache.tools.ant.filters.util,org.apache.tools.tar,org.apache.tools.ant.types.resources,org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.taskdefs.email,org.w3c.dom,org.apache.tools.ant.input'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.taskdefs,org.apache.tools.ant.filters,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors,javax.xml.transform,org.apache.tools.ant.types.selectors.modifiedselector,org.apache.tools.ant.util,org.apache.tools.zip,org.apache.tools.ant.helper,javax.xml.parsers,org.apache.tools.tar,org.apache.tools.ant.types.resources,org.xml.sax,org.apache.tools.ant,javax.xml.transform.sax'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.conditions'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.cvslib'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.w3c.dom'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.util.regexp'/>
    <p n='uses' v='org.apache.tools.ant,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.filters'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.util.regexp'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.selectors'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors.modifiedselector,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.bzip2'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.launch'/>
    <p n='uses' v='com.sun.tools.javac,sun.tools.javac'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.selectors.modifiedselector'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.types.selectors'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.mappers'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.filters.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.compilers'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,com.sun.tools.javac,org.apache.tools.ant,org.apache.tools.ant.util,sun.tools.javac'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.util'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.w3c.dom,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors,org.apache.tools.ant.launch,javax.xml.parsers,org.apache.tools.ant.filters.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.zip'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.helper'/>
    <p n='uses' v='org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.util,org.xml.sax.helpers'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.spi'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.dispatch'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.filters.util'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.filters'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.tar'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.resources'/>
    <p n='uses' v='org.apache.tools.ant.types.resources.comparators,org.apache.tools.tar,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.types.selectors,org.apache.tools.bzip2,org.apache.tools.zip,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs.optional,org.apache.tools.ant.types.selectors,org.apache.tools.ant.launch,org.apache.tools.ant.util,javax.xml.parsers,org.apache.tools.ant.helper,org.apache.tools.ant.dispatch,org.apache.tools.ant.types.resources,org.xml.sax,org.apache.env,org.w3c.dom,org.apache.tools.ant.util.java15,org.apache.tools.ant.input,org.xml.sax.helpers'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.loader'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.resources.selectors'/>
    <p n='uses' v='org.apache.tools.ant.types.resources.comparators,org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.types.selectors'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.email'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.mail'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.input'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.listener'/>
    <p n='uses' v='org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.taskdefs.email,org.apache.tools.mail'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.mail'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.tools.javac)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.javac
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.env)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.env
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.dispatch)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.dispatch ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.filters)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.filters ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.filters.util)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.filters.util ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.helper)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.helper ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.input)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.input ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.launch)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.launch ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.listener)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.listener ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.loader)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.loader ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.compilers)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.compilers ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.condition)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.condition ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.cvslib)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.cvslib ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.email)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.email ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.optional)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs.optional
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.rmic)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.rmic ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.conditions)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.conditions ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.mappers)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.mappers ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.resources)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.resources ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.resources.comparators)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.resources.comparators
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.resources.selectors)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.resources.selectors
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.selectors)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.selectors ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.selectors.modifiedselector)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.selectors.modifiedselector
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.spi)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.spi ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.util ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util.facade)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.util.facade ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util.java15)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.util.java15
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util.regexp)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.util.regexp ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.bzip2)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.bzip2 ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.mail)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.mail ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.tar)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.tar ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.zip)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.zip ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=sun.rmi.rmic)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.rmi.rmic
  </require>
  <require extend='false' filter='(&amp;(package=sun.tools.javac)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.tools.javac
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.saxon/9.1.0.1_1' presentationname='Apache ServiceMix Bundles: saxon-9.1.0.1' symbolicname='org.apache.servicemix.bundles.saxon' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.saxon/9.1.0.1_1/org.apache.servicemix.bundles.saxon-9.1.0.1_1.jar' version='9.1.0.1_1'>
  <description>
    This bundle simply wraps saxon-9.1.0.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2539471
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: saxon-9.1.0.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.saxon'/>
    <p n='version' t='version' v='9.1.0.1_1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.charcode'/>
    <p n='uses' v='net.sf.saxon.trans,net.sf.saxon,net.sf.saxon.sort,net.sf.saxon.event'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.evpull'/>
    <p n='uses' v='javax.xml.stream.events,net.sf.saxon.pattern,javax.xml.namespace,net.sf.saxon.query,net.sf.saxon.om,net.sf.saxon.type,net.sf.saxon.event,net.sf.saxon.expr,javax.xml.transform,net.sf.saxon.tinytree,net.sf.saxon.trans,net.sf.saxon.pull,net.sf.saxon,net.sf.saxon.sort,javax.xml.transform.stream,net.sf.saxon.value,javax.xml.stream'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.number'/>
    <p n='uses' v='net.sf.saxon.charcode,net.sf.saxon.om,net.sf.saxon.sort,net.sf.saxon.value'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.functions'/>
    <p n='uses' v='net.sf.saxon.charcode,net.sf.saxon.number,net.sf.saxon.query,net.sf.saxon.om,net.sf.saxon.regex,net.sf.saxon.event,net.sf.saxon.instruct,javax.xml.transform,net.sf.saxon.tinytree,net.sf.saxon.trans,net.sf.saxon.style,net.sf.saxon.trace,net.sf.saxon.exslt,net.sf.saxon.sort,javax.xml.transform.stream,net.sf.saxon.value,org.xml.sax,net.sf.saxon.pattern,net.sf.saxon.codenorm,net.sf.saxon.type,net.sf.saxon.expr,javax.xml.transform.dom,javax.xml.transform.sax,net.sf.saxon.sxpath,net.sf.saxon'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.query'/>
    <p n='uses' v='net.sf.saxon.charcode,net.sf.saxon.evpull,net.sf.saxon.functions,net.sf.saxon.om,net.sf.saxon.event,net.sf.saxon.instruct,javax.xml.transform,net.sf.saxon.tinytree,net.sf.saxon.trans,net.sf.saxon.trace,net.sf.saxon.pull,net.sf.saxon.sort,net.sf.saxon.value,javax.xml.transform.stream,net.sf.saxon.pattern,net.sf.saxon.type,net.sf.saxon.expr,net.sf.saxon.sxpath,net.sf.saxon'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.om'/>
    <p n='uses' v='net.sf.saxon.charcode,org.xml.sax,net.sf.saxon.pattern,net.sf.saxon.evpull,net.sf.saxon.event,net.sf.saxon.type,net.sf.saxon.expr,javax.xml.transform,net.sf.saxon.tinytree,net.sf.saxon.trans,org.xml.sax.helpers,net.sf.saxon,net.sf.saxon.sort,net.sf.saxon.value'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.event'/>
    <p n='uses' v='net.sf.saxon.charcode,net.sf.saxon.evpull,net.sf.saxon.om,net.sf.saxon.instruct,javax.xml.transform,net.sf.saxon.tinytree,net.sf.saxon.tree,net.sf.saxon.trans,net.sf.saxon.pull,net.sf.saxon.trace,net.sf.saxon.sort,net.sf.saxon.value,javax.xml.transform.stream,org.xml.sax,net.sf.saxon.pattern,net.sf.saxon.type,net.sf.saxon.codenorm,net.sf.saxon.expr,javax.xml.transform.dom,javax.xml.transform.sax,org.xml.sax.ext,net.sf.saxon'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.regex'/>
    <p n='uses' v='net.sf.saxon.charcode,net.sf.saxon.trans,net.sf.saxon.om,net.sf.saxon.sort,net.sf.saxon.value'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.instruct'/>
    <p n='uses' v='net.sf.saxon.evpull,net.sf.saxon.number,net.sf.saxon.functions,net.sf.saxon.query,net.sf.saxon.om,net.sf.saxon.regex,net.sf.saxon.event,javax.xml.transform,net.sf.saxon.tinytree,net.sf.saxon.trans,net.sf.saxon.trace,net.sf.saxon.pull,net.sf.saxon.sort,javax.xml.transform.stream,net.sf.saxon.value,org.xml.sax,net.sf.saxon.pattern,net.sf.saxon.type,net.sf.saxon.expr,javax.xml.transform.dom,javax.xml.transform.sax,net.sf.saxon'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.tinytree'/>
    <p n='uses' v='net.sf.saxon.pattern,net.sf.saxon.evpull,net.sf.saxon.om,net.sf.saxon.type,net.sf.saxon.event,javax.xml.transform,net.sf.saxon.tree,net.sf.saxon.trans,net.sf.saxon.pull,net.sf.saxon,net.sf.saxon.sort,net.sf.saxon.value'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.tree'/>
    <p n='uses' v='net.sf.saxon.trans,net.sf.saxon.pattern,net.sf.saxon,net.sf.saxon.om,net.sf.saxon.sort,net.sf.saxon.event,net.sf.saxon.type,net.sf.saxon.value,javax.xml.transform'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.sql'/>
    <p n='uses' v='net.sf.saxon.om,net.sf.saxon.event,net.sf.saxon.instruct,net.sf.saxon.expr,net.sf.saxon.trans,net.sf.saxon.style,net.sf.saxon,net.sf.saxon.value'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.trans'/>
    <p n='uses' v='net.sf.saxon.pattern,net.sf.saxon.functions,net.sf.saxon.om,net.sf.saxon.type,net.sf.saxon.instruct,net.sf.saxon.expr,javax.xml.transform,net.sf.saxon.trace,net.sf.saxon,net.sf.saxon.sort,net.sf.saxon.value'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.style'/>
    <p n='uses' v='net.sf.saxon.charcode,net.sf.saxon.number,net.sf.saxon.functions,net.sf.saxon.query,net.sf.saxon.om,net.sf.saxon.event,net.sf.saxon.regex,net.sf.saxon.instruct,javax.xml.transform,net.sf.saxon.tree,net.sf.saxon.trans,net.sf.saxon.trace,net.sf.saxon.sort,net.sf.saxon.value,org.xml.sax,net.sf.saxon.pattern,net.sf.saxon.type,net.sf.saxon.expr,net.sf.saxon.sxpath,net.sf.saxon'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.trace'/>
    <p n='uses' v='net.sf.saxon.pattern,net.sf.saxon.om,net.sf.saxon.type,net.sf.saxon.event,net.sf.saxon.instruct,net.sf.saxon.expr,javax.xml.transform,net.sf.saxon.trans,net.sf.saxon,javax.xml.transform.stream,net.sf.saxon.value'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.pull'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,net.sf.saxon.om,net.sf.saxon.event,net.sf.saxon.type,net.sf.saxon.instruct,net.sf.saxon.expr,javax.xml.transform,net.sf.saxon.tinytree,net.sf.saxon.trans,net.sf.saxon,net.sf.saxon.sort,net.sf.saxon.value,javax.xml.stream'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.exslt'/>
    <p n='uses' v='net.sf.saxon.pattern,net.sf.saxon.functions,net.sf.saxon.om,net.sf.saxon.type,net.sf.saxon.expr,net.sf.saxon.trans,net.sf.saxon,net.sf.saxon.sort,net.sf.saxon.value'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.dom'/>
    <p n='uses' v='net.sf.saxon.functions,net.sf.saxon.om,net.sf.saxon.event,javax.xml.transform,net.sf.saxon.tinytree,net.sf.saxon.trans,javax.xml.parsers,net.sf.saxon.sort,net.sf.saxon.value,javax.xml.transform.stream,org.xml.sax,net.sf.saxon.pattern,org.w3c.dom,net.sf.saxon.type,net.sf.saxon.expr,javax.xml.transform.dom,javax.xml.transform.sax,org.xml.sax.helpers,net.sf.saxon'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.sort'/>
    <p n='uses' v='net.sf.saxon.pattern,net.sf.saxon.om,net.sf.saxon.type,net.sf.saxon.instruct,net.sf.saxon.expr,javax.xml.transform,net.sf.saxon.trans,net.sf.saxon.trace,net.sf.saxon,net.sf.saxon.value'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.value'/>
    <p n='uses' v='net.sf.saxon.charcode,net.sf.saxon.pattern,net.sf.saxon.functions,net.sf.saxon.om,net.sf.saxon.type,net.sf.saxon.event,net.sf.saxon.instruct,net.sf.saxon.expr,javax.xml.transform,net.sf.saxon.tinytree,net.sf.saxon.trans,net.sf.saxon,net.sf.saxon.sort'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.pattern'/>
    <p n='uses' v='net.sf.saxon.functions,net.sf.saxon.om,net.sf.saxon.event,net.sf.saxon.type,net.sf.saxon.instruct,net.sf.saxon.expr,javax.xml.transform,net.sf.saxon.tinytree,net.sf.saxon.trans,net.sf.saxon.trace,net.sf.saxon,net.sf.saxon.sort,net.sf.saxon.value'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.codenorm'/>
    <p n='uses' v='net.sf.saxon.charcode,net.sf.saxon.trans,net.sf.saxon.om,net.sf.saxon.sort,net.sf.saxon.value'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.type'/>
    <p n='uses' v='org.xml.sax,net.sf.saxon.pattern,net.sf.saxon.om,net.sf.saxon.instruct,net.sf.saxon.expr,javax.xml.transform,net.sf.saxon.trans,net.sf.saxon,net.sf.saxon.sort,net.sf.saxon.value'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.expr'/>
    <p n='uses' v='org.xml.sax,net.sf.saxon.pattern,net.sf.saxon.evpull,net.sf.saxon.query,net.sf.saxon.functions,net.sf.saxon.om,net.sf.saxon.regex,net.sf.saxon.event,net.sf.saxon.type,net.sf.saxon.instruct,javax.xml.transform,net.sf.saxon.sxpath,net.sf.saxon.trans,net.sf.saxon.trace,net.sf.saxon,net.sf.saxon.sort,net.sf.saxon.value'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.java'/>
    <p n='uses' v='net.sf.saxon.charcode,net.sf.saxon.functions,net.sf.saxon.om,net.sf.saxon.type,net.sf.saxon.event,net.sf.saxon.regex,javax.xml.transform,net.sf.saxon.trans,net.sf.saxon,net.sf.saxon.sort,javax.xml.transform.stream,net.sf.saxon.value'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon.sxpath'/>
    <p n='uses' v='net.sf.saxon.pattern,net.sf.saxon.functions,net.sf.saxon.om,net.sf.saxon.type,net.sf.saxon.event,net.sf.saxon.instruct,net.sf.saxon.expr,javax.xml.transform,net.sf.saxon.trans,net.sf.saxon,net.sf.saxon.sort,javax.xml.transform.stream,net.sf.saxon.value'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='net.sf.saxon'/>
    <p n='uses' v='net.sf.saxon.evpull,net.sf.saxon.functions,net.sf.saxon.query,net.sf.saxon.om,net.sf.saxon.regex,net.sf.saxon.event,net.sf.saxon.instruct,javax.xml.transform,net.sf.saxon.tinytree,net.sf.saxon.tree,net.sf.saxon.trans,net.sf.saxon.style,net.sf.saxon.pull,net.sf.saxon.trace,javax.xml.parsers,net.sf.saxon.sort,net.sf.saxon.value,javax.xml.transform.stream,org.xml.sax,org.w3c.dom,net.sf.saxon.type,net.sf.saxon.expr,net.sf.saxon.java,javax.xml.transform.dom,net.sf.saxon.sxpath,javax.xml.transform.sax,org.xml.sax.ext'/>
    <p n='version' t='version' v='9.1.0.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.charcode)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.charcode ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.codenorm)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.codenorm ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.dom)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.dom ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.event)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.event ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.evpull)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.evpull ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.expr)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.expr ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.exslt)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.exslt ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.functions)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.functions ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.instruct)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.instruct ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.java)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.java ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.number)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.number ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.om)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.om ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.pattern)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.pattern ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.pull)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.pull ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.query)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.query ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.regex)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.regex ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.sort)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.sort ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.sql)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.sql ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.style)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.style ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.sxpath)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.sxpath ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.tinytree)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.tinytree ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.trace)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.trace ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.trans)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.trans ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.tree)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.tree ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.type)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.type ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.value)(version&gt;=9.1.0.1))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.value ;version=9.1.0.1
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.opensaml/1.1.0.1' presentationname='Apache ServiceMix Bundles: opensaml-1.1' symbolicname='org.apache.servicemix.bundles.opensaml' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.opensaml/1.1_1/org.apache.servicemix.bundles.opensaml-1.1_1.jar' version='1.1.0.1'>
  <description>
    This bundle simply wraps opensaml-1.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    153622
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: opensaml-1.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.opensaml'/>
    <p n='version' t='version' v='1.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.opensaml.provider'/>
    <p n='uses' v='org.apache.log4j,org.apache.xml.security.c14n,org.apache.commons.codec.binary,org.w3c.dom,org.xml.sax,javax.xml.namespace,javax.servlet,org.opensaml.artifact,org.opensaml,javax.xml.validation,javax.net.ssl,javax.servlet.http'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.opensaml.artifact'/>
    <p n='uses' v='org.apache.log4j,junit.framework,org.opensaml,org.apache.commons.codec.binary,junit.textui'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.opensaml'/>
    <p n='uses' v='org.opensaml.provider,org.apache.log4j,org.apache.xml.security.algorithms,org.apache.commons.codec.binary,junit.textui,org.xml.sax,javax.xml.namespace,org.apache.xml.security.utils,junit.framework,org.apache.xml.security.exceptions,org.apache.xml.security,org.apache.xml.security.keys.content,org.apache.xml.security.keys,org.apache.xml.security.transforms,javax.xml.transform.sax,org.apache.xml.security.c14n,org.apache.xml.security.keys.content.x509,javax.xml.parsers,org.w3c.dom,org.opensaml.artifact,org.apache.xml.security.signature,javax.xml.transform,org.apache.xml.security.transforms.params,javax.xml.transform.stream,javax.xml.validation,javax.servlet.http'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=junit.textui)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.textui
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.codec.binary)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.codec.binary
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.algorithms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.algorithms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.c14n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.c14n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.exceptions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.exceptions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.keys.content.x509)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.keys.content.x509
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.signature)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.signature
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.transforms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.transforms
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.transforms.params)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.transforms.params
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.security.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.security.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.opensaml)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.opensaml ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.opensaml.artifact)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.opensaml.artifact ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.opensaml.provider)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.opensaml.provider ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.howl/1.0.1.1_1' presentationname='Apache ServiceMix Bundles: howl-1.0.1-1' symbolicname='org.apache.servicemix.bundles.howl' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.howl/1.0.1-1_1/org.apache.servicemix.bundles.howl-1.0.1-1_1.jar' version='1.0.1.1_1'>
  <description>
    This bundle simply wraps howl-1.0.1-1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    82675
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: howl-1.0.1-1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.howl'/>
    <p n='version' t='version' v='1.0.1.1_1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.howl.log.util'/>
    <p n='version' t='version' v='1.0.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.howl.log'/>
    <p n='version' t='version' v='1.0.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.objectweb.howl.log.xa'/>
    <p n='uses' v='org.objectweb.howl.log'/>
    <p n='version' t='version' v='1.0.1.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.objectweb.howl.log)(version&gt;=1.0.1.1))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.howl.log ;version=1.0.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.howl.log.util)(version&gt;=1.0.1.1))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.howl.log.util ;version=1.0.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.howl.log.xa)(version&gt;=1.0.1.1))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.howl.log.xa ;version=1.0.1.1
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.hapi/0.5.1.1' presentationname='Apache ServiceMix Bundles: hapi-0.5.1' symbolicname='org.apache.servicemix.bundles.hapi' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.hapi/0.5.1_1/org.apache.servicemix.bundles.hapi-0.5.1_1.jar' version='0.5.1.1'>
  <description>
    This bundle simply wraps hapi-0.5.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    6653949
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: hapi-0.5.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.hapi'/>
    <p n='version' t='version' v='0.5.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.parser'/>
    <p n='uses' v='ca.uhn.hl7v2,org.apache.xerces.parsers,ca.uhn.hl7v2.validation,ca.uhn.hl7v2.sourcegen,javax.xml.parsers,org.apache.xerces.xni.parser,org.w3c.dom,org.xml.sax,ca.uhn.hl7v2.validation.impl,org.apache.xml.serialize,ca.uhn.hl7v2.util,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.protocol.impl'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,javax.jms,ca.uhn.hl7v2.protocol,ca.uhn.hl7v2.llp,ca.uhn.hl7v2.app,ca.uhn.hl7v2.preparser,ca.uhn.hl7v2.util,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.protocol'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,javax.jms,ca.uhn.hl7v2.model'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v24.message'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2.model.v24.segment,ca.uhn.hl7v2,ca.uhn.hl7v2.model.v24.group,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.llp'/>
    <p n='uses' v='ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.sourcegen'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,sun.jdbc.odbc,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.conf.parser'/>
    <p n='uses' v='ca.uhn.hl7v2.conf,org.apache.xerces.parsers,ca.uhn.hl7v2.conf.spec,org.apache.xerces.xni.parser,org.w3c.dom,ca.uhn.hl7v2.conf.spec.message,ca.uhn.log,org.xml.sax'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.conf.classes.abs'/>
    <p n='uses' v='ca.uhn.hl7v2.conf.classes.exceptions,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v24.segment'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,ca.uhn.hl7v2.model.v24.datatype,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v24.datatype'/>
    <p n='uses' v='ca.uhn.hl7v2.model.primitive,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.validation.impl'/>
    <p n='uses' v='ca.uhn.hl7v2,ca.uhn.hl7v2.conf.check,org.apache.xerces.xni.grammars,ca.uhn.hl7v2.conf,ca.uhn.hl7v2.conf.store,ca.uhn.hl7v2.validation,javax.xml.parsers,ca.uhn.hl7v2.conf.parser,ca.uhn.hl7v2.conf.spec,org.w3c.dom,org.xml.sax,org.apache.xerces.util,org.apache.xpath,ca.uhn.hl7v2.util,ca.uhn.hl7v2.model,org.xml.sax.helpers,ca.uhn.log,ca.uhn.hl7v2.conf.spec.message'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v23.segment'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,ca.uhn.hl7v2.model.v23.datatype,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v24.group'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2.model.v24.segment,ca.uhn.hl7v2,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v22.group'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2.model.v22.segment,ca.uhn.hl7v2,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v23.group'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,ca.uhn.hl7v2.model.v23.segment,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.conf.classes.exceptions'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v231.group'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,ca.uhn.hl7v2.model.v231.segment,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.validation.app'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,org.apache.commons.logging,org.apache.log4j,ca.uhn.hl7v2.validation,ca.uhn.hl7v2.validation.impl,ca.uhn.hl7v2.app,ca.uhn.hl7v2.util,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,sun.jdbc.odbc,ca.uhn.hl7v2.util,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.conf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.sourceheader'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.conf.spec.usecase'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v25.segment'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2.model.v25.datatype,ca.uhn.hl7v2,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v25.group'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,ca.uhn.hl7v2.model.v25.segment,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.validation'/>
    <p n='uses' v='ca.uhn.hl7v2,ca.uhn.hl7v2.util,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v231.message'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,ca.uhn.hl7v2.model.v231.segment,ca.uhn.hl7v2.model.v231.group,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v22.message'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2.model.v22.segment,ca.uhn.hl7v2,ca.uhn.hl7v2.model.v22.group,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v21.datatype'/>
    <p n='uses' v='ca.uhn.hl7v2.model.primitive,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.app'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,org.apache.commons.logging,ca.uhn.hl7v2.view,ca.uhn.hl7v2.llp,org.apache.commons.cli,ca.uhn.hl7v2.sourcegen,javax.swing,ca.uhn.hl7v2.model.primitive,ca.uhn.hl7v2.util,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v21.group'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,ca.uhn.hl7v2.model.v21.segment,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,ca.uhn.hl7v2.validation,ca.uhn.hl7v2.util,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.conf.check'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,ca.uhn.hl7v2.conf,ca.uhn.hl7v2.conf.store,ca.uhn.hl7v2.conf.parser,ca.uhn.hl7v2.conf.spec,ca.uhn.hl7v2.util,ca.uhn.hl7v2.model,ca.uhn.log,ca.uhn.hl7v2.conf.spec.message'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.conf.classes.generator.builders'/>
    <p n='uses' v='ca.uhn.hl7v2.conf,ca.uhn.hl7v2.sourcegen,ca.uhn.hl7v2.conf.spec,ca.uhn.hl7v2.conf.parser,ca.uhn.hl7v2.conf.classes.generator.genclasses,ca.uhn.hl7v2.conf.classes.exceptions,ca.uhn.hl7v2.model,ca.uhn.log,ca.uhn.hl7v2.conf.spec.message'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v23.datatype'/>
    <p n='uses' v='ca.uhn.hl7v2.model.primitive,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v21.message'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,ca.uhn.hl7v2.model.v21.segment,ca.uhn.hl7v2.model.v21.group,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v231.datatype'/>
    <p n='uses' v='ca.uhn.hl7v2.model.primitive,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v21.segment'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,ca.uhn.hl7v2.model.v21.datatype,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.conf.classes.generator.genclasses'/>
    <p n='uses' v='ca.uhn.hl7v2.conf.classes.generator.builders'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.preparser'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,javax.xml.parsers,ca.uhn.hl7v2.util,org.xml.sax.helpers,org.xml.sax'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.conf.spec.message'/>
    <p n='uses' v='ca.uhn.hl7v2.conf,ca.uhn.hl7v2.conf.spec'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.log'/>
    <p n='uses' v='org.apache.commons.logging'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.parser.eventmap'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v22.segment'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,ca.uhn.hl7v2.model.v22.datatype,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v25.datatype'/>
    <p n='uses' v='ca.uhn.hl7v2.model.primitive,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.view'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,javax.swing.tree,javax.swing,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.conf.store'/>
    <p n='uses' v='ca.uhn.hl7v2.conf,org.jdom.input,org.jdom,ca.uhn.hl7v2.util,org.jdom.xpath,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.conf.spec'/>
    <p n='uses' v='ca.uhn.hl7v2.conf,ca.uhn.hl7v2.conf.spec.usecase,ca.uhn.hl7v2.conf.spec.message'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v23.message'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,ca.uhn.hl7v2.model.v23.segment,ca.uhn.hl7v2.model.v23.group,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v231.segment'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,ca.uhn.hl7v2.model.v231.datatype,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.primitive'/>
    <p n='uses' v='ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v25.message'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,ca.uhn.hl7v2.model.v25.segment,ca.uhn.hl7v2.model.v25.group,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.model.v22.datatype'/>
    <p n='uses' v='ca.uhn.hl7v2.model.primitive,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ca.uhn.hl7v2.util'/>
    <p n='uses' v='ca.uhn.hl7v2.parser,ca.uhn.hl7v2,org.apache.log4j,org.apache.xerces.parsers,org.apache.xerces.xni.parser,org.w3c.dom,org.xml.sax,org.apache.xml.serialize,ca.uhn.hl7v2.model,ca.uhn.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.app
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.conf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.conf
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.conf.check)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.conf.check
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.conf.classes.abs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.conf.classes.abs
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.conf.classes.exceptions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.conf.classes.exceptions
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.conf.classes.generator.builders)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.conf.classes.generator.builders
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.conf.classes.generator.genclasses)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.conf.classes.generator.genclasses
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.conf.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.conf.parser
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.conf.spec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.conf.spec
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.conf.spec.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.conf.spec.message
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.conf.spec.usecase)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.conf.spec.usecase
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.conf.store)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.conf.store
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.llp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.llp
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.primitive)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.primitive
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v21.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v21.datatype
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v21.group)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v21.group
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v21.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v21.message
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v21.segment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v21.segment
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v22.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v22.datatype
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v22.group)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v22.group
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v22.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v22.message
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v22.segment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v22.segment
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v23.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v23.datatype
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v23.group)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v23.group
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v23.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v23.message
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v23.segment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v23.segment
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v231.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v231.datatype
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v231.group)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v231.group
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v231.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v231.message
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v231.segment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v231.segment
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v24.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v24.datatype
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v24.group)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v24.group
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v24.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v24.message
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v24.segment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v24.segment
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v25.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v25.datatype
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v25.group)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v25.group
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v25.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v25.message
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.model.v25.segment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.model.v25.segment
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.parser
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.parser.eventmap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.parser.eventmap
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.preparser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.preparser
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.protocol)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.protocol
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.protocol.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.protocol.impl
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.sourcegen)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.sourcegen
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.util
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.validation
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.validation.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.validation.app
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.validation.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.validation.impl
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.hl7v2.view)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.hl7v2.view
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.log
  </require>
  <require extend='false' filter='(&amp;(package=ca.uhn.sourceheader)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package ca.uhn.sourceheader
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.tree
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.cli)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.cli
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xni.grammars)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.xni.grammars
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xni.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xerces.xni.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.serialize)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.serialize
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=sun.jdbc.odbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.jdbc.odbc
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.xmlbeans/2.4.0.1' presentationname='Apache ServiceMix Bundles: xmlbeans-2.4.0' symbolicname='org.apache.servicemix.bundles.xmlbeans' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.xmlbeans/2.4.0_1/org.apache.servicemix.bundles.xmlbeans-2.4.0_1.jar' version='2.4.0.1'>
  <description>
    This bundle simply wraps xmlbeans-2.4.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2445853
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: xmlbeans-2.4.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.xmlbeans'/>
    <p n='version' t='version' v='2.4.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.provider'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.internal.parser,org.apache.xmlbeans.impl.jam.internal.elements,org.apache.xmlbeans.impl.jam.internal,org.apache.xmlbeans.impl.jam.annotation,org.apache.xmlbeans.impl.jam.mutable,org.apache.xmlbeans.impl.jam.internal.reflect,org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.jam.visitor,org.apache.xmlbeans.impl.jam.internal.javadoc'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.xmlbeans.xml.stream,org.xml.sax.ext,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.internal'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.provider,org.apache.xmlbeans.impl.jam.internal.elements,org.apache.xmlbeans.impl.jam.annotation,org.apache.xmlbeans.impl.jam.mutable,org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.jam.visitor,com.sun.javadoc'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.validator'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,org.apache.xmlbeans.xml.stream,org.apache.xmlbeans,javax.xml.namespace,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.schema,javax.xml.stream.util,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.annotation'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.provider,org.apache.xmlbeans.impl.jam.internal.elements,org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.jam.mutable,com.sun.javadoc'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.substwsdl.impl'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,org.apache.xmlbeans,javax.xml.namespace,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.internal.classrefs'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.mutable'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.jam.visitor'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.internal.reflect'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.provider,org.apache.xmlbeans.impl.jam.internal.elements,org.apache.xmlbeans.impl.jam.internal,org.apache.xmlbeans.impl.jam.mutable'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.piccolo.xml'/>
    <p n='uses' v='org.apache.xmlbeans.impl.piccolo.io,org.xml.sax,org.xml.sax.ext,javax.xml.parsers,org.apache.xmlbeans.impl.piccolo.util'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.xmlconfig'/>
    <p n='uses' v='org.apache.xmlbeans.xml.stream,org.apache.xmlbeans,javax.xml.namespace,org.w3c.dom,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.xsdschema.impl'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,org.apache.xmlbeans,org.apache.xmlbeans.impl.xb.xsdschema,javax.xml.namespace'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.values'/>
    <p n='uses' v='org.apache.xmlbeans.impl.util,org.apache.xmlbeans,org.xml.sax,org.apache.xmlbeans.impl.validator,javax.xml.namespace,org.w3c.dom,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.xml.stream,org.xml.sax.ext,org.apache.xmlbeans.impl.common,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.piccolo.io'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.xml.stream'/>
    <p n='uses' v='org.apache.xmlbeans.xml.stream.utils'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.regex'/>
    <p n='uses' v='org.apache.xmlbeans.impl.common'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.xsdownload'/>
    <p n='uses' v='org.apache.xmlbeans.xml.stream,org.apache.xmlbeans,org.w3c.dom,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.xsdschema'/>
    <p n='uses' v='org.apache.xmlbeans.xml.stream,org.apache.xmlbeans,javax.xml.namespace,org.w3c.dom,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.richParser'/>
    <p n='uses' v='org.apache.xmlbeans.impl.util,org.apache.xmlbeans,javax.xml.namespace,org.apache.xmlbeans.impl.common,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.provider,org.apache.xmlbeans.impl.jam.internal,org.apache.xmlbeans.impl.jam.annotation,org.apache.xmlbeans.impl.jam.visitor'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xsd2inst'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.util,javax.xml.namespace,org.apache.xmlbeans.soap,org.apache.xmlbeans.impl.tool'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.piccolo.util'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.ltgfmt.impl'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,org.apache.xmlbeans,javax.xml.namespace,org.apache.xmlbeans.impl.xb.ltgfmt'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.common'/>
    <p n='uses' v='org.apache.xmlbeans,org.xml.sax,org.apache.xmlbeans.xml.stream.events,javax.xml.namespace,org.w3c.dom,org.apache.xmlbeans.xml.stream,org.xml.sax.ext,org.apache.xml.resolver,javax.xml.parsers,org.xml.sax.helpers,org.apache.xml.resolver.tools,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.xmlschema'/>
    <p n='uses' v='org.apache.xmlbeans.xml.stream,org.apache.xmlbeans,org.w3c.dom,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.tool'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.apache.xmlbeans.impl.validator,javax.xml.namespace,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.values,org.apache.xmlbeans.impl.xb.xsdownload,org.apache.xmlbeans.impl.xb.xsdschema,org.apache.xmlbeans.impl.common,javax.xml.stream,org.apache.xmlbeans.impl.util,org.xml.sax,org.apache.tools.ant,org.apache.xmlbeans.soap,org.apache.xmlbeans.impl.xb.ltgfmt,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.visitor'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.internal.elements,org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.jam.mutable'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.inst2xsd.util'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,org.apache.xmlbeans,org.apache.xmlbeans.impl.xb.xsdschema,javax.xml.namespace,org.apache.xmlbeans.impl.common'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.internal.javadoc'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.provider,org.apache.xmlbeans.impl.jam.internal.elements,org.apache.xmlbeans.impl.jam.internal,com.sun.tools.javadoc,org.apache.xmlbeans.impl.jam.annotation,org.apache.xmlbeans.impl.jam.mutable,com.sun.javadoc'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.internal.parser'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.provider,org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.jam.mutable'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.internal.elements'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.provider,org.apache.xmlbeans.impl.jam.internal,org.apache.xmlbeans.impl.jam.annotation,org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.jam.internal.classrefs,org.apache.xmlbeans.impl.jam.visitor,org.apache.xmlbeans.impl.jam.mutable'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.util'/>
    <p n='uses' v='org.apache.xmlbeans,javax.xml.namespace,org.apache.xmlbeans.impl.common'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.soap'/>
    <p n='uses' v='org.apache.xmlbeans,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.xml.stream.events'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.soap'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,javax.xml.namespace,org.apache.xmlbeans.impl.common'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.xmlschema.impl'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,org.apache.xmlbeans,javax.xml.namespace,org.apache.xmlbeans.impl.xb.xmlschema'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.xml.stream.utils'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.ltgfmt'/>
    <p n='uses' v='org.apache.xmlbeans.xml.stream,org.apache.xmlbeans,org.w3c.dom,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.store'/>
    <p n='uses' v='org.apache.xmlbeans,org.xml.sax,org.apache.xmlbeans.impl.soap,javax.xml.namespace,org.w3c.dom,org.apache.xmlbeans.impl.piccolo.xml,javax.xml.transform,org.apache.xmlbeans.impl.values,org.apache.xmlbeans.impl.piccolo.io,org.apache.xmlbeans.xml.stream,org.xml.sax.ext,org.xml.sax.helpers,org.apache.xmlbeans.impl.common,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.schema'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.validator,javax.xml.namespace,org.apache.xmlbeans.impl.values,org.apache.xmlbeans.xml.stream,org.apache.xmlbeans.impl.regex,org.apache.xmlbeans.impl.xb.xsdschema,org.apache.xmlbeans.impl.common,javax.xml.stream,org.apache.xmlbeans.impl.util,org.xml.sax,org.apache.xmlbeans.soap,org.w3c.dom,org.apache.xmlbeans.impl.store'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.config'/>
    <p n='uses' v='org.apache.xmlbeans,javax.xml.namespace,org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.impl.xb.xmlconfig'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.xsdownload.impl'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,org.apache.xmlbeans.impl.xb.xsdownload,org.apache.xmlbeans,javax.xml.namespace'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xpathgen'/>
    <p n='uses' v='org.apache.xmlbeans,javax.xml.namespace'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.inst2xsd'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.util,javax.xml.namespace,org.apache.xmlbeans.impl.values,org.apache.xmlbeans.impl.xb.xsdschema,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.inst2xsd.util,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.xml'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.provider,org.apache.xmlbeans.impl.jam.internal.elements,org.apache.xmlbeans.impl.jam.internal,org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.jam.mutable,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.xmlconfig.impl'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,org.apache.xmlbeans,javax.xml.namespace,org.apache.xmlbeans.impl.xb.xmlconfig'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='uses' v='org.apache.xmlbeans.xml.stream,org.apache.xmlbeans,org.w3c.dom,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.javadoc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.javadoc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.javadoc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.javadoc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.common ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.config ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.inst2xsd)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.inst2xsd ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.inst2xsd.util)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.inst2xsd.util ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.annotation)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.annotation ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.internal)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.internal ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.internal.classrefs)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.internal.classrefs
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.internal.elements)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.internal.elements
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.internal.javadoc)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.internal.javadoc
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.internal.parser)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.internal.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.internal.reflect)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.internal.reflect
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.mutable)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.mutable ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.provider)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.provider ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.visitor)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.visitor ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.xml)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.xml ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.piccolo.io)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.piccolo.io ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.piccolo.util)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.piccolo.util ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.piccolo.xml)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.piccolo.xml ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.regex)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.regex ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.richParser)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.richParser ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.schema ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.soap)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.soap ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.store)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.store ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.tool ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.util ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.validator)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.validator ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.values ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.ltgfmt)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.ltgfmt ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.ltgfmt.impl)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.ltgfmt.impl ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl.impl)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl.impl ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig.impl)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig.impl ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlschema)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.xmlschema ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlschema.impl)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.xmlschema.impl ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdownload)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.xsdownload ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdownload.impl)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.xsdownload.impl
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema.impl)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema.impl ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xpathgen)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xpathgen ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xsd2inst)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xsd2inst ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.soap)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.soap ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.xml.stream)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.xml.stream ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.xml.stream.events)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.xml.stream.events ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.xml.stream.utils)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.xml.stream.utils ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.xmlbeans/2.4.0.2' presentationname='Apache ServiceMix Bundles: xmlbeans-2.4.0' symbolicname='org.apache.servicemix.bundles.xmlbeans' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.xmlbeans/2.4.0_2/org.apache.servicemix.bundles.xmlbeans-2.4.0_2.jar' version='2.4.0.2'>
  <description>
    This bundle simply wraps xmlbeans-2.4.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2724121
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: xmlbeans-2.4.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.xmlbeans'/>
    <p n='version' t='version' v='2.4.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.element.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F05_2Fxmlbean_2Fltgfmt'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.system.sXMLLANG'/>
    <p n='uses' v='org.apache.xmlbeans'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.system.sXMLSCHEMA'/>
    <p n='uses' v='org.apache.xmlbeans'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.type.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.xmlbeans.xml.stream,org.xml.sax.ext,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.attributegroup.http_3A_2F_2Fwww_2Ew3_2Eorg_2FXML_2F1998_2Fnamespace'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.JavaNameList'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdownload'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SimpleContentDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.type.URI_SHA_1_0072531D5C2BA64B5A3672B694CDAA153CD30788'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.UnionDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NamespaceList'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.FullDerivationSet'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.RestrictionDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.piccolo.xml'/>
    <p n='uses' v='org.apache.xmlbeans.impl.piccolo.io,org.xml.sax,org.xml.sax.ext,javax.xml.parsers,org.apache.xmlbeans.impl.piccolo.util'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.ltgfmt.TestsDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.AnyDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.piccolo.io'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.xsdownload'/>
    <p n='uses' v='org.apache.xmlbeans.xml.stream,org.apache.xmlbeans,org.w3c.dom,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.xsdschema'/>
    <p n='uses' v='org.apache.xmlbeans.xml.stream,org.apache.xmlbeans,javax.xml.namespace,org.w3c.dom,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.AnnotationDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.ltgfmt.impl'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,org.apache.xmlbeans,javax.xml.namespace,org.apache.xmlbeans.impl.xb.ltgfmt'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.piccolo.util'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NamedGroup'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.internal.javadoc'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.provider,org.apache.xmlbeans.impl.jam.internal.elements,org.apache.xmlbeans.impl.jam.internal,com.sun.tools.javadoc,org.apache.xmlbeans.impl.jam.annotation,org.apache.xmlbeans.impl.jam.mutable,com.sun.javadoc'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.internal.parser'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.provider,org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.jam.mutable'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.util'/>
    <p n='uses' v='org.apache.xmlbeans,javax.xml.namespace,org.apache.xmlbeans.impl.common'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.soap'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,javax.xml.namespace,org.apache.xmlbeans.impl.common'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.xml.stream.utils'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.ltgfmt'/>
    <p n='uses' v='org.apache.xmlbeans.xml.stream,org.apache.xmlbeans,org.w3c.dom,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.BlockSet'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.WhiteSpaceDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.element.URI_SHA_1_0072531D5C2BA64B5A3672B694CDAA153CD30788'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.xsdownload.impl'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,org.apache.xmlbeans.impl.xb.xsdownload,org.apache.xmlbeans,javax.xml.namespace'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.modelgroup.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.All'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.RedefineDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.xml'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.provider,org.apache.xmlbeans.impl.jam.internal.elements,org.apache.xmlbeans.impl.jam.internal,org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.jam.mutable,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.namespace.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F01_2Fxmlbean_2Fxsdownload'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.ListDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.BlockSet.Member2'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.DocumentationDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.ltgfmt'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.namespace.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.internal'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.provider,org.apache.xmlbeans.impl.jam.internal.elements,org.apache.xmlbeans.impl.jam.annotation,org.apache.xmlbeans.impl.jam.mutable,org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.jam.visitor,com.sun.javadoc'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlschema.SpaceAttribute'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.validator'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,org.apache.xmlbeans.xml.stream,org.apache.xmlbeans,javax.xml.namespace,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.schema,javax.xml.stream.util,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.annotation'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.provider,org.apache.xmlbeans.impl.jam.internal.elements,org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.jam.mutable,com.sun.javadoc'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.KeyrefDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.WhiteSpaceDocument.WhiteSpace'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.internal.classrefs'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SelectorDocument.Selector'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NotationDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.internal.reflect'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.provider,org.apache.xmlbeans.impl.jam.internal.elements,org.apache.xmlbeans.impl.jam.internal,org.apache.xmlbeans.impl.jam.mutable'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.Extensionconfig'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.ltgfmt.FileDesc'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.richParser'/>
    <p n='uses' v='org.apache.xmlbeans.impl.util,org.apache.xmlbeans,javax.xml.namespace,org.apache.xmlbeans.impl.common,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.substwsdl.DefinitionsDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.xmlschema'/>
    <p n='uses' v='org.apache.xmlbeans.xml.stream,org.apache.xmlbeans,org.w3c.dom,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.tool'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.apache.xmlbeans.impl.validator,javax.xml.namespace,org.apache.xmlbeans.impl.xb.xmlconfig,org.apache.xmlbeans.impl.values,org.apache.xmlbeans.impl.xb.xsdownload,org.apache.xmlbeans.impl.xb.xsdschema,org.apache.xmlbeans.impl.common,javax.xml.stream,org.apache.xmlbeans.impl.util,org.xml.sax,org.apache.tools.ant,org.apache.xmlbeans.soap,org.apache.xmlbeans.impl.xb.ltgfmt,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.impl.config,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.ComplexContentDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.src'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SimpleDerivationSet'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SimpleDerivationSet.Member2'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlschema'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.xmlschema.impl'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,org.apache.xmlbeans,javax.xml.namespace,org.apache.xmlbeans.impl.xb.xmlschema'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.store'/>
    <p n='uses' v='org.apache.xmlbeans,org.xml.sax,org.apache.xmlbeans.impl.soap,javax.xml.namespace,org.w3c.dom,org.apache.xmlbeans.impl.piccolo.xml,javax.xml.transform,org.apache.xmlbeans.impl.values,org.apache.xmlbeans.impl.piccolo.io,org.apache.xmlbeans.xml.stream,org.xml.sax.ext,org.xml.sax.helpers,org.apache.xmlbeans.impl.common,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.schema'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.validator,javax.xml.namespace,org.apache.xmlbeans.impl.values,org.apache.xmlbeans.xml.stream,org.apache.xmlbeans.impl.regex,org.apache.xmlbeans.impl.xb.xsdschema,org.apache.xmlbeans.impl.common,javax.xml.stream,org.apache.xmlbeans.impl.util,org.xml.sax,org.apache.xmlbeans.soap,org.w3c.dom,org.apache.xmlbeans.impl.store'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.FieldDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.NamespaceList.Member2.Item'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.system.sXMLCONFIG'/>
    <p n='uses' v='org.apache.xmlbeans'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='uses' v='org.apache.xmlbeans.xml.stream,org.apache.xmlbeans,org.w3c.dom,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.xmlconfig'/>
    <p n='uses' v='org.apache.xmlbeans.xml.stream,org.apache.xmlbeans,javax.xml.namespace,org.w3c.dom,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.IncludeDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.values'/>
    <p n='uses' v='org.apache.xmlbeans.impl.util,org.apache.xmlbeans,org.xml.sax,org.apache.xmlbeans.impl.validator,javax.xml.namespace,org.w3c.dom,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.xml.stream,org.xml.sax.ext,org.apache.xmlbeans.impl.common,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.regex'/>
    <p n='uses' v='org.apache.xmlbeans.impl.common'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.namespace.URI_SHA_1_0072531D5C2BA64B5A3672B694CDAA153CD30788'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.system.sXMLTOOLS'/>
    <p n='uses' v='org.apache.xmlbeans'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.NamespaceList.Member2'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.provider,org.apache.xmlbeans.impl.jam.internal,org.apache.xmlbeans.impl.jam.annotation,org.apache.xmlbeans.impl.jam.visitor'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.AppinfoDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.PatternDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.FieldDocument.Field'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.inst2xsd.util'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,org.apache.xmlbeans,org.apache.xmlbeans.impl.xb.xsdschema,javax.xml.namespace,org.apache.xmlbeans.impl.common'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SelectorDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.NamespaceList'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.attribute.http_3A_2F_2Fwww_2Ew3_2Eorg_2FXML_2F1998_2Fnamespace'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.soap'/>
    <p n='uses' v='org.apache.xmlbeans,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.xml.stream.events'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.namespace.URI_SHA_1_5AAF5BEFD4F30D215E94ED53118FE32C537C3B26'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.ConfigDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xpathgen'/>
    <p n='uses' v='org.apache.xmlbeans,javax.xml.namespace'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.ImportDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.ltgfmt.TestCase'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.element.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F01_2Fxmlbean_2Fxsdownload'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.xmlconfig.impl'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,org.apache.xmlbeans,javax.xml.namespace,org.apache.xmlbeans.impl.xb.xmlconfig'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.provider'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.internal.parser,org.apache.xmlbeans.impl.jam.internal.elements,org.apache.xmlbeans.impl.jam.internal,org.apache.xmlbeans.impl.jam.annotation,org.apache.xmlbeans.impl.jam.mutable,org.apache.xmlbeans.impl.jam.internal.reflect,org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.jam.visitor,org.apache.xmlbeans.impl.jam.internal.javadoc'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.element.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.element.URI_SHA_1_5AAF5BEFD4F30D215E94ED53118FE32C537C3B26'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.Wildcard'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.substwsdl.impl'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,org.apache.xmlbeans,javax.xml.namespace,org.apache.xmlbeans.impl.xb.substwsdl'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.mutable'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.jam.visitor'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.namespace.http_3A_2F_2Fwww_2Ew3_2Eorg_2FXML_2F1998_2Fnamespace'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.attributegroup.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xb.xsdschema.impl'/>
    <p n='uses' v='org.apache.xmlbeans.impl.values,org.apache.xmlbeans,org.apache.xmlbeans.impl.xb.xsdschema,javax.xml.namespace'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.xml.stream'/>
    <p n='uses' v='org.apache.xmlbeans.xml.stream.utils'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.type.URI_SHA_1_5AAF5BEFD4F30D215E94ED53118FE32C537C3B26'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NamespaceList.Member2'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.identityconstraint.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.AllNNI'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.xsd2inst'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.util,javax.xml.namespace,org.apache.xmlbeans.soap,org.apache.xmlbeans.impl.tool'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.common'/>
    <p n='uses' v='org.apache.xmlbeans,org.xml.sax,org.apache.xmlbeans.xml.stream.events,javax.xml.namespace,org.w3c.dom,org.apache.xmlbeans.xml.stream,org.xml.sax.ext,javax.xml.parsers,org.xml.sax.helpers,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.visitor'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.internal.elements,org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.jam.mutable'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.UnionDocument.Union'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.jam.internal.elements'/>
    <p n='uses' v='org.apache.xmlbeans.impl.jam.provider,org.apache.xmlbeans.impl.jam.internal,org.apache.xmlbeans.impl.jam.annotation,org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.jam.internal.classrefs,org.apache.xmlbeans.impl.jam.visitor,org.apache.xmlbeans.impl.jam.mutable'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.DerivationSet'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.type.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F05_2Fxmlbean_2Fltgfmt'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.Attribute'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdownload.DownloadedSchemasDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.config'/>
    <p n='uses' v='org.apache.xmlbeans,javax.xml.namespace,org.apache.xmlbeans.impl.jam,org.apache.xmlbeans.impl.schema,org.apache.xmlbeans.impl.xb.xmlconfig'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.TotalDigitsDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.namespace.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F05_2Fxmlbean_2Fltgfmt'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NamespaceList.Member2.Item'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NarrowMaxMin'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xmlbeans.impl.inst2xsd'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.xmlbeans.impl.util,javax.xml.namespace,org.apache.xmlbeans.impl.values,org.apache.xmlbeans.impl.xb.xsdschema,org.apache.xmlbeans.impl.common,org.apache.xmlbeans.impl.tool,org.apache.xmlbeans.impl.inst2xsd.util,javax.xml.stream'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SchemaDocument'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='schemaorg_apache_xmlbeans.type.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F01_2Fxmlbean_2Fxsdownload'/>
    <p n='version' t='version' v='2.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.javadoc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.javadoc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.javadoc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.javadoc
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.common)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.common ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.config)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.config ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.inst2xsd)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.inst2xsd ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.inst2xsd.util)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.inst2xsd.util ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.annotation)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.annotation ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.internal)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.internal ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.internal.classrefs)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.internal.classrefs
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.internal.elements)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.internal.elements
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.internal.javadoc)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.internal.javadoc
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.internal.parser)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.internal.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.internal.reflect)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.internal.reflect
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.mutable)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.mutable ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.provider)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.provider ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.visitor)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.visitor ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.jam.xml)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.jam.xml ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.piccolo.io)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.piccolo.io ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.piccolo.util)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.piccolo.util ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.piccolo.xml)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.piccolo.xml ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.regex)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.regex ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.richParser)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.richParser ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.schema)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.schema ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.soap)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.soap ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.store)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.store ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.tool)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.tool ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.util)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.util ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.validator)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.validator ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.values)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.values ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.ltgfmt)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.ltgfmt ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.ltgfmt.impl)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.ltgfmt.impl ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.substwsdl.impl)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.substwsdl.impl ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlconfig.impl)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.xmlconfig.impl ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlschema)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.xmlschema ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xmlschema.impl)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.xmlschema.impl ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdownload)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.xsdownload ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdownload.impl)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.xsdownload.impl
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xb.xsdschema.impl)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xb.xsdschema.impl ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xpathgen)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xpathgen ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.impl.xsd2inst)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.impl.xsd2inst ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.soap)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.soap ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.xml.stream)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.xml.stream ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.xml.stream.events)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.xml.stream.events ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans.xml.stream.utils)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xmlbeans.xml.stream.utils ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.attribute.http_3A_2F_2Fwww_2Ew3_2Eorg_2FXML_2F1998_2Fnamespace)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.attribute.http_3A_2F_2Fwww_2Ew3_2Eorg_2FXML_2F1998_2Fnamespace
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.attributegroup.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.attributegroup.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.attributegroup.http_3A_2F_2Fwww_2Ew3_2Eorg_2FXML_2F1998_2Fnamespace)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.attributegroup.http_3A_2F_2Fwww_2Ew3_2Eorg_2FXML_2F1998_2Fnamespace
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.element.URI_SHA_1_0072531D5C2BA64B5A3672B694CDAA153CD30788)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.element.URI_SHA_1_0072531D5C2BA64B5A3672B694CDAA153CD30788
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.element.URI_SHA_1_5AAF5BEFD4F30D215E94ED53118FE32C537C3B26)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.element.URI_SHA_1_5AAF5BEFD4F30D215E94ED53118FE32C537C3B26
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.element.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F01_2Fxmlbean_2Fxsdownload)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.element.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F01_2Fxmlbean_2Fxsdownload
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.element.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F05_2Fxmlbean_2Fltgfmt)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.element.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F05_2Fxmlbean_2Fltgfmt
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.element.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.element.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.identityconstraint.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.identityconstraint.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.ltgfmt)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.ltgfmt
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.ltgfmt.FileDesc)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.ltgfmt.FileDesc
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.ltgfmt.TestCase)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.ltgfmt.TestCase
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.ltgfmt.TestsDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.ltgfmt.TestsDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.substwsdl)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.substwsdl
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.substwsdl.DefinitionsDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.substwsdl.DefinitionsDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.ConfigDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.ConfigDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.Extensionconfig)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.Extensionconfig
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.JavaNameList)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.JavaNameList
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.NamespaceList)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.NamespaceList
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.NamespaceList.Member2)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.NamespaceList.Member2
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.NamespaceList.Member2.Item)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlconfig.NamespaceList.Member2.Item
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlschema)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlschema
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlschema.SpaceAttribute)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xmlschema.SpaceAttribute
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdownload)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdownload
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdownload.DownloadedSchemasDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdownload.DownloadedSchemasDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.All)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.All
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.AllNNI)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.AllNNI
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.AnnotationDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.AnnotationDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.AnyDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.AnyDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.AppinfoDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.AppinfoDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.Attribute)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.Attribute
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.BlockSet)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.BlockSet
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.BlockSet.Member2)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.BlockSet.Member2
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.ComplexContentDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.ComplexContentDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.DerivationSet)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.DerivationSet
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.DocumentationDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.DocumentationDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.FieldDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.FieldDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.FieldDocument.Field)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.FieldDocument.Field
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.FullDerivationSet)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.FullDerivationSet
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.ImportDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.ImportDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.IncludeDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.IncludeDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.KeyrefDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.KeyrefDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.ListDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.ListDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NamedGroup)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NamedGroup
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NamespaceList)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NamespaceList
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NamespaceList.Member2)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NamespaceList.Member2
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NamespaceList.Member2.Item)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NamespaceList.Member2.Item
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NarrowMaxMin)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NarrowMaxMin
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NotationDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.NotationDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.PatternDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.PatternDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.RedefineDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.RedefineDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.RestrictionDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.RestrictionDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SchemaDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SchemaDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SelectorDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SelectorDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SelectorDocument.Selector)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SelectorDocument.Selector
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SimpleContentDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SimpleContentDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SimpleDerivationSet)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SimpleDerivationSet
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SimpleDerivationSet.Member2)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.SimpleDerivationSet.Member2
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.TotalDigitsDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.TotalDigitsDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.UnionDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.UnionDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.UnionDocument.Union)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.UnionDocument.Union
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.WhiteSpaceDocument)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.WhiteSpaceDocument
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.WhiteSpaceDocument.WhiteSpace)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.WhiteSpaceDocument.WhiteSpace
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.Wildcard)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.javaname.org.apache.xmlbeans.impl.xb.xsdschema.Wildcard
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.modelgroup.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.modelgroup.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.namespace.URI_SHA_1_0072531D5C2BA64B5A3672B694CDAA153CD30788)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.namespace.URI_SHA_1_0072531D5C2BA64B5A3672B694CDAA153CD30788
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.namespace.URI_SHA_1_5AAF5BEFD4F30D215E94ED53118FE32C537C3B26)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.namespace.URI_SHA_1_5AAF5BEFD4F30D215E94ED53118FE32C537C3B26
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.namespace.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F01_2Fxmlbean_2Fxsdownload)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.namespace.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F01_2Fxmlbean_2Fxsdownload
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.namespace.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F05_2Fxmlbean_2Fltgfmt)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.namespace.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F05_2Fxmlbean_2Fltgfmt
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.namespace.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.namespace.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.namespace.http_3A_2F_2Fwww_2Ew3_2Eorg_2FXML_2F1998_2Fnamespace)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.namespace.http_3A_2F_2Fwww_2Ew3_2Eorg_2FXML_2F1998_2Fnamespace
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.src)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.src ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.system.sXMLCONFIG)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.system.sXMLCONFIG
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.system.sXMLLANG)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.system.sXMLLANG ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.system.sXMLSCHEMA)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.system.sXMLSCHEMA
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.system.sXMLTOOLS)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.system.sXMLTOOLS ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.type.URI_SHA_1_0072531D5C2BA64B5A3672B694CDAA153CD30788)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.type.URI_SHA_1_0072531D5C2BA64B5A3672B694CDAA153CD30788
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.type.URI_SHA_1_5AAF5BEFD4F30D215E94ED53118FE32C537C3B26)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.type.URI_SHA_1_5AAF5BEFD4F30D215E94ED53118FE32C537C3B26
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.type.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F01_2Fxmlbean_2Fxsdownload)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.type.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F01_2Fxmlbean_2Fxsdownload
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.type.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F05_2Fxmlbean_2Fltgfmt)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.type.http_3A_2F_2Fwww_2Ebea_2Ecom_2F2003_2F05_2Fxmlbean_2Fltgfmt
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=schemaorg_apache_xmlbeans.type.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package schemaorg_apache_xmlbeans.type.http_3A_2F_2Fwww_2Ew3_2Eorg_2F2001_2FXMLSchema
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.4.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.xmlschema/1.4.2.1' presentationname='Apache ServiceMix Bundles: xmlschema-1.4.2' symbolicname='org.apache.servicemix.bundles.xmlschema' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.xmlschema/1.4.2_1/org.apache.servicemix.bundles.xmlschema-1.4.2_1.jar' version='1.4.2.1'>
  <description>
    This bundle simply wraps xmlschema-1.4.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    139529
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: xmlschema-1.4.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.xmlschema'/>
    <p n='version' t='version' v='1.4.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.commons.schema.resolver'/>
    <p n='uses' v='org.xml.sax'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.commons.schema.utils'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.commons.schema'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.transform,org.apache.ws.commons.schema.extensions,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils,javax.xml.parsers,org.apache.ws.commons.schema.constants,javax.xml.transform.stream'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.commons.schema.constants'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.commons.schema.extensions'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.xmlschema/1.4.3.1' presentationname='Apache ServiceMix Bundles: xmlschema-1.4.3' symbolicname='org.apache.servicemix.bundles.xmlschema' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.xmlschema/1.4.3_1/org.apache.servicemix.bundles.xmlschema-1.4.3_1.jar' version='1.4.3.1'>
  <description>
    This bundle simply wraps xmlschema-1.4.3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    143307
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: xmlschema-1.4.3'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.xmlschema'/>
    <p n='version' t='version' v='1.4.3.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.commons.schema.resolver'/>
    <p n='uses' v='org.xml.sax'/>
    <p n='version' t='version' v='1.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.commons.schema.utils'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='1.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.commons.schema'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.transform,org.apache.ws.commons.schema.extensions,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils,javax.xml.parsers,org.apache.ws.commons.schema.constants,javax.xml.transform.stream'/>
    <p n='version' t='version' v='1.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.commons.schema.constants'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='1.4.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.ws.commons.schema.extensions'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='1.4.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.4.3))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.4.3
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.commons-csv/1.0.0.r706899_1' presentationname='Apache ServiceMix Bundles: commons-csv-1.0-r706899' symbolicname='org.apache.servicemix.bundles.commons-csv' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-csv/1.0-r706899_1/org.apache.servicemix.bundles.commons-csv-1.0-r706899_1.jar' version='1.0.0.r706899_1'>
  <description>
    This bundle simply wraps commons-csv-1.0-r706899.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28057
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: commons-csv-1.0-r706899'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.commons-csv'/>
    <p n='version' t='version' v='1.0.0.r706899_1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.csv.writer'/>
    <p n='version' t='version' v='1.0.0.r706899'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.csv'/>
    <p n='version' t='version' v='1.0.0.r706899'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.csv)(version&gt;=1.0.0.r706899))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.csv ;version=1.0.0.r706899
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.csv.writer)(version&gt;=1.0.0.r706899))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.csv.writer ;version=1.0.0.r706899
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jcr-api/1.0.0.1' presentationname='Apache ServiceMix Bundles: jcr-1.0' symbolicname='org.apache.servicemix.bundles.jcr-api' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jcr-api/1.0_1/org.apache.servicemix.bundles.jcr-api-1.0_1.jar' version='1.0.0.1'>
  <description>
    This bundle simply wraps jcr-1.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    42457
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: jcr-1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jcr-api'/>
    <p n='version' t='version' v='1.0.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jcr.lock'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jcr.query'/>
    <p n='uses' v='javax.jcr.lock,javax.jcr.version,javax.jcr.nodetype,javax.jcr'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jcr.observation'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jcr.version'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jcr.nodetype'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jcr'/>
    <p n='uses' v='javax.jcr.lock,org.xml.sax,javax.jcr.query,javax.jcr.observation,javax.jcr.nodetype,javax.jcr.version'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jcr.util'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.ant-1.7.0/1.0.0.m1' presentationname='ServiceMix OSGI Common Bundles: ant-1.7.0' symbolicname='org.apache.servicemix.bundles.ant-1.7.0' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.ant-1.7.0/1.0-m1/org.apache.servicemix.bundles.ant-1.7.0-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    This bundle simply wraps ant-1.7.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1311735
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix OSGI Common Bundles: ant-1.7.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.ant-1.7.0'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.util.facade'/>
    <p n='uses' v='org.apache.tools.ant.types'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.resources.comparators'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.condition'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors,org.apache.tools.ant.util,org.apache.tools.zip'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.rmic'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.tools.ant.util,sun.rmi.rmic'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs'/>
    <p n='uses' v='org.apache.tools.ant.util.facade,org.apache.tools.ant.types.resources.comparators,org.apache.tools.ant.taskdefs.rmic,org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types,org.apache.tools.ant.filters,org.apache.tools.ant.types.selectors,org.apache.tools.ant.launch,org.apache.tools.bzip2,org.apache.tools.ant.types.selectors.modifiedselector,org.apache.tools.ant.taskdefs.compilers,org.apache.tools.ant.util,org.apache.tools.zip,javax.xml.parsers,org.apache.tools.ant.helper,org.apache.tools.ant.types.spi,org.apache.tools.ant.filters.util,org.apache.tools.tar,org.apache.tools.ant.types.resources,org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.taskdefs.email,org.w3c.dom,org.apache.tools.ant.input'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.taskdefs,org.apache.tools.ant.filters,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors,javax.xml.transform,org.apache.tools.ant.types.selectors.modifiedselector,org.apache.tools.ant.util,org.apache.tools.zip,org.apache.tools.ant.helper,javax.xml.parsers,org.apache.tools.tar,org.apache.tools.ant.types.resources,org.xml.sax,org.apache.tools.ant,javax.xml.transform.sax'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.conditions'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.cvslib'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.w3c.dom'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.util.regexp'/>
    <p n='uses' v='org.apache.tools.ant,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.filters'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.util.regexp'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.selectors'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors.modifiedselector,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.bzip2'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.launch'/>
    <p n='uses' v='com.sun.tools.javac,sun.tools.javac'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.selectors.modifiedselector'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.types.selectors'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.mappers'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.filters.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.compilers'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,com.sun.tools.javac,org.apache.tools.ant,org.apache.tools.ant.util,sun.tools.javac'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.util'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.w3c.dom,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors,org.apache.tools.ant.launch,javax.xml.parsers,org.apache.tools.ant.filters.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.zip'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.helper'/>
    <p n='uses' v='org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.util,org.xml.sax.helpers'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.spi'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.dispatch'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.filters.util'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.filters'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.tar'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.resources'/>
    <p n='uses' v='org.apache.tools.ant.types.resources.comparators,org.apache.tools.tar,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.types.selectors,org.apache.tools.bzip2,org.apache.tools.zip,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs.optional,org.apache.tools.ant.types.selectors,org.apache.tools.ant.launch,org.apache.tools.ant.util,javax.xml.parsers,org.apache.tools.ant.helper,org.apache.tools.ant.dispatch,org.apache.tools.ant.types.resources,org.xml.sax,org.apache.env,org.w3c.dom,org.apache.tools.ant.util.java15,org.apache.tools.ant.input,org.xml.sax.helpers'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.loader'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.resources.selectors'/>
    <p n='uses' v='org.apache.tools.ant.types.resources.comparators,org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.types.selectors'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.email'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.mail'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.input'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.listener'/>
    <p n='uses' v='org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.taskdefs.email,org.apache.tools.mail'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.mail'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.tools.javac)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.javac
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.env)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.env
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.dispatch)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.dispatch ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.filters)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.filters ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.filters.util)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.filters.util ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.helper)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.helper ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.input)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.input ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.launch)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.launch ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.listener)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.listener ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.loader)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.loader ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.compilers)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.compilers ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.condition)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.condition ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.cvslib)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.cvslib ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.email)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.email ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.optional)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs.optional
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.rmic)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.rmic ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.conditions)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.conditions ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.mappers)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.mappers ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.resources)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.resources ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.resources.comparators)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.resources.comparators
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.resources.selectors)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.resources.selectors
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.selectors)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.selectors ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.selectors.modifiedselector)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.selectors.modifiedselector
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.spi)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.spi ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.util ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util.facade)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.util.facade ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util.java15)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.util.java15
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util.regexp)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.util.regexp ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.bzip2)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.bzip2 ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.mail)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.mail ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.tar)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.tar ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.zip)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.zip ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=sun.rmi.rmic)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.rmi.rmic
  </require>
  <require extend='false' filter='(&amp;(package=sun.tools.javac)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.tools.javac
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.ant-1.7.0/1.0.0.m2' presentationname='ServiceMix OSGI Common Bundles: ant-1.7.0' symbolicname='org.apache.servicemix.bundles.ant-1.7.0' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.ant-1.7.0/1.0-m2/org.apache.servicemix.bundles.ant-1.7.0-1.0-m2.jar' version='1.0.0.m2'>
  <description>
    This bundle simply wraps ant-1.7.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1311733
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix OSGI Common Bundles: ant-1.7.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.ant-1.7.0'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.util.facade'/>
    <p n='uses' v='org.apache.tools.ant.types'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.resources.comparators'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.condition'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors,org.apache.tools.ant.util,org.apache.tools.zip'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.rmic'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.tools.ant.util,sun.rmi.rmic'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs'/>
    <p n='uses' v='org.apache.tools.ant.util.facade,org.apache.tools.ant.types.resources.comparators,org.apache.tools.ant.taskdefs.rmic,org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types,org.apache.tools.ant.filters,org.apache.tools.ant.types.selectors,org.apache.tools.ant.launch,org.apache.tools.bzip2,org.apache.tools.ant.types.selectors.modifiedselector,org.apache.tools.ant.taskdefs.compilers,org.apache.tools.ant.util,org.apache.tools.zip,javax.xml.parsers,org.apache.tools.ant.helper,org.apache.tools.ant.types.spi,org.apache.tools.ant.filters.util,org.apache.tools.tar,org.apache.tools.ant.types.resources,org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.taskdefs.email,org.w3c.dom,org.apache.tools.ant.input'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.taskdefs,org.apache.tools.ant.filters,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors,javax.xml.transform,org.apache.tools.ant.types.selectors.modifiedselector,org.apache.tools.ant.util,org.apache.tools.zip,org.apache.tools.ant.helper,javax.xml.parsers,org.apache.tools.tar,org.apache.tools.ant.types.resources,org.xml.sax,org.apache.tools.ant,javax.xml.transform.sax'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.conditions'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.cvslib'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.w3c.dom'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.util.regexp'/>
    <p n='uses' v='org.apache.tools.ant,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.filters'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.util.regexp'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.selectors'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors.modifiedselector,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.bzip2'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.launch'/>
    <p n='uses' v='com.sun.tools.javac,sun.tools.javac'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.selectors.modifiedselector'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.types.selectors'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.mappers'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.filters.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.compilers'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,com.sun.tools.javac,org.apache.tools.ant,org.apache.tools.ant.util,sun.tools.javac'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.util'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.w3c.dom,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors,org.apache.tools.ant.launch,javax.xml.parsers,org.apache.tools.ant.filters.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.zip'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.helper'/>
    <p n='uses' v='org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.util,org.xml.sax.helpers'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.spi'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.dispatch'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.filters.util'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.filters'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.tar'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.resources'/>
    <p n='uses' v='org.apache.tools.ant.types.resources.comparators,org.apache.tools.tar,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.types.selectors,org.apache.tools.bzip2,org.apache.tools.zip,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs.optional,org.apache.tools.ant.types.selectors,org.apache.tools.ant.launch,org.apache.tools.ant.util,javax.xml.parsers,org.apache.tools.ant.helper,org.apache.tools.ant.dispatch,org.apache.tools.ant.types.resources,org.xml.sax,org.apache.env,org.w3c.dom,org.apache.tools.ant.util.java15,org.apache.tools.ant.input,org.xml.sax.helpers'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.loader'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.resources.selectors'/>
    <p n='uses' v='org.apache.tools.ant.types.resources.comparators,org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.types.selectors'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.email'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.mail'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.input'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.listener'/>
    <p n='uses' v='org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.taskdefs.email,org.apache.tools.mail'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.mail'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.tools.javac)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.javac
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.env)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.env
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.dispatch)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.dispatch ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.filters)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.filters ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.filters.util)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.filters.util ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.helper)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.helper ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.input)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.input ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.launch)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.launch ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.listener)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.listener ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.loader)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.loader ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.compilers)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.compilers ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.condition)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.condition ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.cvslib)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.cvslib ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.email)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.email ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.optional)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs.optional
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.rmic)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.rmic ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.conditions)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.conditions ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.mappers)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.mappers ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.resources)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.resources ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.resources.comparators)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.resources.comparators
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.resources.selectors)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.resources.selectors
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.selectors)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.selectors ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.selectors.modifiedselector)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.selectors.modifiedselector
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.spi)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.spi ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.util ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util.facade)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.util.facade ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util.java15)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.util.java15
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util.regexp)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.util.regexp ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.bzip2)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.bzip2 ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.mail)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.mail ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.tar)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.tar ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.zip)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.zip ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=sun.rmi.rmic)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.rmi.rmic
  </require>
  <require extend='false' filter='(&amp;(package=sun.tools.javac)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.tools.javac
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.ant-1.7.0/1.0.0.rc1' presentationname='Apache ServiceMix OSGI Common Bundles: ant-1.7.0' symbolicname='org.apache.servicemix.bundles.ant-1.7.0' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.ant-1.7.0/1.0.0-rc1/org.apache.servicemix.bundles.ant-1.7.0-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    This bundle simply wraps ant-1.7.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1311912
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: ant-1.7.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.ant-1.7.0'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.util.facade'/>
    <p n='uses' v='org.apache.tools.ant.types'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.resources.comparators'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.condition'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors,org.apache.tools.ant.util,org.apache.tools.zip'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.rmic'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.tools.ant.util,sun.rmi.rmic'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs'/>
    <p n='uses' v='org.apache.tools.ant.util.facade,org.apache.tools.ant.types.resources.comparators,org.apache.tools.ant.taskdefs.rmic,org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types,org.apache.tools.ant.filters,org.apache.tools.ant.types.selectors,org.apache.tools.ant.launch,org.apache.tools.bzip2,org.apache.tools.ant.types.selectors.modifiedselector,org.apache.tools.ant.taskdefs.compilers,org.apache.tools.ant.util,org.apache.tools.zip,javax.xml.parsers,org.apache.tools.ant.helper,org.apache.tools.ant.types.spi,org.apache.tools.ant.filters.util,org.apache.tools.tar,org.apache.tools.ant.types.resources,org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.taskdefs.email,org.w3c.dom,org.apache.tools.ant.input'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.taskdefs,org.apache.tools.ant.filters,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors,javax.xml.transform,org.apache.tools.ant.types.selectors.modifiedselector,org.apache.tools.ant.util,org.apache.tools.zip,org.apache.tools.ant.helper,javax.xml.parsers,org.apache.tools.tar,org.apache.tools.ant.types.resources,org.xml.sax,org.apache.tools.ant,javax.xml.transform.sax'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.conditions'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.cvslib'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.w3c.dom'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.util.regexp'/>
    <p n='uses' v='org.apache.tools.ant,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.filters'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.util.regexp'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.selectors'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors.modifiedselector,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.bzip2'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.launch'/>
    <p n='uses' v='com.sun.tools.javac,sun.tools.javac'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.selectors.modifiedselector'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.types.selectors'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.mappers'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.filters.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.compilers'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,com.sun.tools.javac,org.apache.tools.ant,org.apache.tools.ant.util,sun.tools.javac'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.util'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.w3c.dom,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors,org.apache.tools.ant.launch,javax.xml.parsers,org.apache.tools.ant.filters.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.zip'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.helper'/>
    <p n='uses' v='org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.util,org.xml.sax.helpers'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.spi'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.dispatch'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.filters.util'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.filters'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.tar'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.resources'/>
    <p n='uses' v='org.apache.tools.ant.types.resources.comparators,org.apache.tools.tar,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.types.selectors,org.apache.tools.bzip2,org.apache.tools.zip,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs.optional,org.apache.tools.ant.types.selectors,org.apache.tools.ant.launch,org.apache.tools.ant.util,javax.xml.parsers,org.apache.tools.ant.helper,org.apache.tools.ant.dispatch,org.apache.tools.ant.types.resources,org.xml.sax,org.apache.env,org.w3c.dom,org.apache.tools.ant.util.java15,org.apache.tools.ant.input,org.xml.sax.helpers'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.loader'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.resources.selectors'/>
    <p n='uses' v='org.apache.tools.ant.types.resources.comparators,org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.types.selectors'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.email'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.mail'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.input'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.listener'/>
    <p n='uses' v='org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.taskdefs.email,org.apache.tools.mail'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.mail'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.tools.javac)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.javac
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.env)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.env
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.dispatch)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.dispatch ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.filters)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.filters ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.filters.util)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.filters.util ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.helper)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.helper ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.input)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.input ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.launch)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.launch ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.listener)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.listener ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.loader)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.loader ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.compilers)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.compilers ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.condition)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.condition ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.cvslib)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.cvslib ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.email)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.email ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.optional)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs.optional
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.rmic)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.rmic ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.conditions)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.conditions ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.mappers)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.mappers ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.resources)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.resources ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.resources.comparators)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.resources.comparators
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.resources.selectors)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.resources.selectors
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.selectors)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.selectors ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.selectors.modifiedselector)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.selectors.modifiedselector
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.spi)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.spi ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.util ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util.facade)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.util.facade ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util.java15)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.util.java15
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util.regexp)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.util.regexp ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.bzip2)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.bzip2 ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.mail)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.mail ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.tar)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.tar ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.zip)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.zip ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=sun.rmi.rmic)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.rmi.rmic
  </require>
  <require extend='false' filter='(&amp;(package=sun.tools.javac)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.tools.javac
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.ant-1.7.0/1.0.0.m3' presentationname='Apache ServiceMix OSGI Common Bundles: ant-1.7.0' symbolicname='org.apache.servicemix.bundles.ant-1.7.0' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.ant-1.7.0/1.0-m3/org.apache.servicemix.bundles.ant-1.7.0-1.0-m3.jar' version='1.0.0.m3'>
  <description>
    This bundle simply wraps ant-1.7.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1311938
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: ant-1.7.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.ant-1.7.0'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.util.facade'/>
    <p n='uses' v='org.apache.tools.ant.types'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.resources.comparators'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.condition'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors,org.apache.tools.ant.util,org.apache.tools.zip'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.rmic'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.tools.ant.util,sun.rmi.rmic'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs'/>
    <p n='uses' v='org.apache.tools.ant.util.facade,org.apache.tools.ant.types.resources.comparators,org.apache.tools.ant.taskdefs.rmic,org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types,org.apache.tools.ant.filters,org.apache.tools.ant.types.selectors,org.apache.tools.ant.launch,org.apache.tools.bzip2,org.apache.tools.ant.types.selectors.modifiedselector,org.apache.tools.ant.taskdefs.compilers,org.apache.tools.ant.util,org.apache.tools.zip,javax.xml.parsers,org.apache.tools.ant.helper,org.apache.tools.ant.types.spi,org.apache.tools.ant.filters.util,org.apache.tools.tar,org.apache.tools.ant.types.resources,org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.taskdefs.email,org.w3c.dom,org.apache.tools.ant.input'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.taskdefs,org.apache.tools.ant.filters,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors,javax.xml.transform,org.apache.tools.ant.types.selectors.modifiedselector,org.apache.tools.ant.util,org.apache.tools.zip,org.apache.tools.ant.helper,javax.xml.parsers,org.apache.tools.tar,org.apache.tools.ant.types.resources,org.xml.sax,org.apache.tools.ant,javax.xml.transform.sax'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.conditions'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.cvslib'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.w3c.dom'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.util.regexp'/>
    <p n='uses' v='org.apache.tools.ant,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.filters'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.util.regexp'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.selectors'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors.modifiedselector,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.bzip2'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.launch'/>
    <p n='uses' v='com.sun.tools.javac,sun.tools.javac'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.selectors.modifiedselector'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.types.selectors'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.mappers'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.filters.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.compilers'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,com.sun.tools.javac,org.apache.tools.ant,org.apache.tools.ant.util,sun.tools.javac'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.util'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.w3c.dom,org.apache.tools.ant.util.regexp,org.apache.tools.ant.types.selectors,org.apache.tools.ant.launch,javax.xml.parsers,org.apache.tools.ant.filters.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.zip'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.helper'/>
    <p n='uses' v='org.xml.sax,org.apache.tools.ant,org.apache.tools.ant.util,org.xml.sax.helpers'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.spi'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.dispatch'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.filters.util'/>
    <p n='uses' v='org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.filters'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.tar'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.resources'/>
    <p n='uses' v='org.apache.tools.ant.types.resources.comparators,org.apache.tools.tar,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.types.selectors,org.apache.tools.bzip2,org.apache.tools.zip,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs.optional,org.apache.tools.ant.types.selectors,org.apache.tools.ant.launch,org.apache.tools.ant.util,javax.xml.parsers,org.apache.tools.ant.helper,org.apache.tools.ant.dispatch,org.apache.tools.ant.types.resources,org.xml.sax,org.apache.env,org.w3c.dom,org.apache.tools.ant.util.java15,org.apache.tools.ant.input,org.xml.sax.helpers'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.loader'/>
    <p n='uses' v='org.apache.tools.ant'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.types.resources.selectors'/>
    <p n='uses' v='org.apache.tools.ant.types.resources.comparators,org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.types.selectors'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.taskdefs.email'/>
    <p n='uses' v='org.apache.tools.ant.types.resources,org.apache.tools.ant.types,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.mail'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.input'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.apache.tools.ant.util'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.ant.listener'/>
    <p n='uses' v='org.apache.tools.ant,org.apache.tools.ant.util,org.apache.tools.ant.taskdefs.email,org.apache.tools.mail'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tools.mail'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.tools.javac)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.javac
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.env)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.env
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.dispatch)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.dispatch ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.filters)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.filters ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.filters.util)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.filters.util ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.helper)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.helper ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.input)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.input ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.launch)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.launch ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.listener)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.listener ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.loader)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.loader ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.compilers)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.compilers ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.condition)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.condition ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.cvslib)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.cvslib ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.email)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.email ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.optional)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs.optional
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs.rmic)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs.rmic ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.conditions)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.conditions ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.mappers)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.mappers ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.resources)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.resources ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.resources.comparators)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.resources.comparators
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.resources.selectors)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.resources.selectors
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.selectors)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.selectors ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.selectors.modifiedselector)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.selectors.modifiedselector
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types.spi)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types.spi ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.util ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util.facade)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.util.facade ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util.java15)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.util.java15
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util.regexp)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.util.regexp ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.bzip2)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.bzip2 ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.mail)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.mail ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.tar)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.tar ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.zip)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.zip ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=sun.rmi.rmic)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.rmi.rmic
  </require>
  <require extend='false' filter='(&amp;(package=sun.tools.javac)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.tools.javac
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.ibatis-sqlmap/2.3.4.726_1' presentationname='Apache ServiceMix Bundles: ibatis-sqlmap-2.3.4.726' symbolicname='org.apache.servicemix.bundles.ibatis-sqlmap' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.ibatis-sqlmap/2.3.4.726_1/org.apache.servicemix.bundles.ibatis-sqlmap-2.3.4.726_1.jar' version='2.3.4.726_1'>
  <description>
    This bundle simply wraps ibatis-sqlmap-2.3.4.726.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    381692
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: ibatis-sqlmap-2.3.4.726'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.ibatis-sqlmap'/>
    <p n='version' t='version' v='2.3.4.726_1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.mapping.sql.simple'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.mapping.parameter,com.ibatis.common.beans,com.ibatis.sqlmap.engine.impl,com.ibatis.sqlmap.engine.type,com.ibatis.sqlmap.client,com.ibatis.sqlmap.engine.scope,com.ibatis.sqlmap.engine.mapping.sql,com.ibatis.sqlmap.engine.mapping.result'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.config'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.mapping.sql.simple,com.ibatis.sqlmap.engine.cache.memory,com.ibatis.sqlmap.engine.cache.fifo,com.ibatis.sqlmap.engine.mapping.sql.dynamic,com.ibatis.sqlmap.engine.mapping.result,com.ibatis.sqlmap.engine.datasource,com.ibatis.sqlmap.engine.transaction.external,com.ibatis.sqlmap.engine.transaction,com.ibatis.sqlmap.engine.impl,com.ibatis.sqlmap.engine.cache,com.ibatis.sqlmap.engine.type,com.ibatis.sqlmap.client,com.ibatis.sqlmap.engine.mapping.sql,com.ibatis.sqlmap.engine.accessplan,com.ibatis.sqlmap.client.extensions,com.ibatis.sqlmap.engine.mapping.statement,com.ibatis.sqlmap.engine.mapping.parameter,com.ibatis.sqlmap.engine.mapping.sql.stat,com.ibatis.sqlmap.engine.scope,com.ibatis.common.resources,com.ibatis.sqlmap.engine.transaction.jdbc,com.ibatis.common.beans,com.ibatis.sqlmap.engine.transaction.jta,com.ibatis.sqlmap.engine.cache.lru'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.common.xml'/>
    <p n='uses' v='org.xml.sax,javax.xml.parsers,org.w3c.dom'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.cache.oscache'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.cache,com.opensymphony.oscache.base,com.opensymphony.oscache.general'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.cache.memory'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.cache,com.ibatis.sqlmap.client'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.cache.fifo'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.cache'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.mapping.sql.dynamic'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.mapping.sql.simple,com.ibatis.sqlmap.engine.mapping.parameter,com.ibatis.sqlmap.engine.mapping.sql.dynamic.elements,com.ibatis.sqlmap.engine.scope,com.ibatis.sqlmap.engine.mapping.result,com.ibatis.sqlmap.engine.impl,com.ibatis.sqlmap.engine.type,com.ibatis.sqlmap.engine.mapping.sql,com.ibatis.sqlmap.engine.mapping.statement'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.mapping.result'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.mapping.result.loader,com.ibatis.sqlmap.engine.scope,org.w3c.dom,com.ibatis.common.jdbc.exception,com.ibatis.common.resources,com.ibatis.common.beans,com.ibatis.sqlmap.engine.impl,com.ibatis.sqlmap.engine.type,javax.xml.parsers,com.ibatis.sqlmap.engine.mapping.sql,com.ibatis.sqlmap.client,com.ibatis.sqlmap.engine.exchange,com.ibatis.sqlmap.engine.mapping.statement'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.common.logging.nologging'/>
    <p n='uses' v='com.ibatis.common.logging'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.common.jdbc.exception'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.datasource'/>
    <p n='uses' v='javax.naming,com.ibatis.sqlmap.client,com.ibatis.common.jdbc,javax.sql'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.common.jdbc'/>
    <p n='uses' v='com.ibatis.common.resources,com.ibatis.common.beans,com.ibatis.common.logging,org.apache.commons.dbcp,javax.sql'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.transaction.external'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.transaction,com.ibatis.common.jdbc.logging,com.ibatis.common.logging,javax.sql'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.transaction.user'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.transaction,com.ibatis.common.jdbc.logging,com.ibatis.common.logging'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.transaction'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.scope,javax.sql'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.impl'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.mapping.parameter,com.ibatis.sqlmap.engine.scope,com.ibatis.sqlmap.engine.mapping.result,com.ibatis.sqlmap.client.event,com.ibatis.common.jdbc.exception,javax.sql,com.ibatis.sqlmap.engine.transaction.user,com.ibatis.sqlmap.engine.transaction,com.ibatis.common.beans,com.ibatis.sqlmap.engine.type,com.ibatis.sqlmap.engine.cache,com.ibatis.sqlmap.client,com.ibatis.common.logging,com.ibatis.sqlmap.engine.exchange,com.ibatis.common.util,com.ibatis.sqlmap.engine.mapping.statement,com.ibatis.sqlmap.engine.execution'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.cache'/>
    <p n='uses' v='com.ibatis.common.logging,com.ibatis.sqlmap.engine.mapping.statement'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.type'/>
    <p n='uses' v='com.ibatis.sqlmap.client,com.ibatis.sqlmap.client.extensions'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.client'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.builder.xml,com.ibatis.common.util,com.ibatis.sqlmap.client.event,com.ibatis.sqlmap.engine.execution,javax.sql'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.mapping.sql'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.mapping.parameter,com.ibatis.sqlmap.engine.scope,com.ibatis.sqlmap.engine.mapping.result'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.accessplan'/>
    <p n='uses' v='net.sf.cglib.beans,com.ibatis.common.beans'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.client.extensions'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.common.logging'/>
    <p n='uses' v='com.ibatis.common.resources'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.common.util'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.mapping.statement'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.mapping.parameter,com.ibatis.sqlmap.engine.scope,com.ibatis.sqlmap.engine.mapping.result,org.w3c.dom,com.ibatis.sqlmap.client.event,com.ibatis.common.jdbc.exception,javax.xml.transform,javax.xml.transform.dom,com.ibatis.sqlmap.engine.transaction,com.ibatis.common.io,com.ibatis.sqlmap.engine.impl,com.ibatis.sqlmap.engine.type,javax.xml.parsers,com.ibatis.sqlmap.engine.cache,com.ibatis.sqlmap.client,com.ibatis.sqlmap.engine.mapping.sql,com.ibatis.common.util,javax.xml.transform.stream,com.ibatis.sqlmap.engine.execution'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.execution'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.mapping.parameter,com.ibatis.sqlmap.engine.scope,com.ibatis.sqlmap.engine.mapping.result,com.ibatis.sqlmap.client.event,com.ibatis.sqlmap.engine.impl,com.ibatis.sqlmap.engine.type,com.ibatis.sqlmap.client,com.ibatis.sqlmap.engine.mapping.statement'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.common.logging.log4j'/>
    <p n='uses' v='org.apache.log4j,com.ibatis.common.logging'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.common.logging.jdk14'/>
    <p n='uses' v='com.ibatis.common.logging'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.mapping.sql.stat'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.mapping.parameter,com.ibatis.sqlmap.engine.mapping.sql,com.ibatis.sqlmap.engine.scope,com.ibatis.sqlmap.engine.mapping.result'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.mapping.parameter'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.scope,com.ibatis.common.resources,com.ibatis.common.beans,com.ibatis.sqlmap.engine.impl,com.ibatis.sqlmap.engine.type,com.ibatis.sqlmap.engine.cache,com.ibatis.sqlmap.engine.mapping.sql,com.ibatis.sqlmap.client,com.ibatis.sqlmap.client.extensions,com.ibatis.sqlmap.engine.exchange'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.mapping.result.loader'/>
    <p n='uses' v='com.ibatis.common.beans,net.sf.cglib.proxy,com.ibatis.sqlmap.engine.impl,com.ibatis.sqlmap.engine.type'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.common.logging.jakarta'/>
    <p n='uses' v='org.apache.commons.logging,com.ibatis.common.logging'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.mapping.sql.dynamic.elements'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.mapping.parameter,com.ibatis.common.beans,com.ibatis.sqlmap.engine.type,com.ibatis.sqlmap.client,com.ibatis.sqlmap.engine.mapping.sql'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.scope'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.mapping.parameter,com.ibatis.sqlmap.engine.transaction,com.ibatis.sqlmap.engine.impl,com.ibatis.sqlmap.engine.mapping.sql,com.ibatis.sqlmap.client,com.ibatis.sqlmap.engine.mapping.result,com.ibatis.sqlmap.engine.mapping.statement'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.builder.xml'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.config,com.ibatis.sqlmap.engine.mapping.parameter,com.ibatis.common.xml,org.xml.sax,com.ibatis.sqlmap.engine.mapping.sql.dynamic.elements,com.ibatis.sqlmap.engine.scope,com.ibatis.sqlmap.engine.mapping.sql.dynamic,org.w3c.dom,com.ibatis.sqlmap.engine.mapping.result,com.ibatis.sqlmap.engine.mapping.sql.raw,com.ibatis.sqlmap.engine.datasource,javax.sql,com.ibatis.common.resources,com.ibatis.sqlmap.engine.transaction,com.ibatis.sqlmap.engine.impl,com.ibatis.sqlmap.engine.cache,com.ibatis.sqlmap.engine.type,com.ibatis.sqlmap.engine.mapping.sql,com.ibatis.sqlmap.client,com.ibatis.sqlmap.engine.mapping.statement'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.mapping.sql.raw'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.mapping.parameter,com.ibatis.sqlmap.engine.mapping.sql,com.ibatis.sqlmap.engine.scope,com.ibatis.sqlmap.engine.mapping.result'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.client.event'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.transaction.jdbc'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.transaction,com.ibatis.common.jdbc.logging,com.ibatis.common.logging,javax.sql'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.common.resources'/>
    <p n='uses' v='com.ibatis.common.beans'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.transaction.jta'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.transaction,javax.naming,com.ibatis.common.jdbc.logging,com.ibatis.sqlmap.client,com.ibatis.common.logging,javax.transaction,javax.sql'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.common.io'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.common.beans'/>
    <p n='uses' v='com.ibatis.common.resources,org.w3c.dom,com.ibatis.sqlmap.engine.mapping.result'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.cache.lru'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.cache'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.common.jdbc.logging'/>
    <p n='uses' v='com.ibatis.common.beans,com.ibatis.common.logging'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ibatis.sqlmap.engine.exchange'/>
    <p n='uses' v='com.ibatis.sqlmap.engine.mapping.parameter,com.ibatis.sqlmap.engine.scope,com.ibatis.sqlmap.engine.mapping.result,org.w3c.dom,com.ibatis.common.beans,com.ibatis.sqlmap.engine.cache,com.ibatis.sqlmap.engine.type,javax.xml.parsers,com.ibatis.sqlmap.client,com.ibatis.sqlmap.engine.accessplan'/>
    <p n='version' t='version' v='2.3.4.726'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibatis.common.beans)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.common.beans ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.common.io)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.common.io ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.common.jdbc)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.common.jdbc ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.common.jdbc.exception)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.common.jdbc.exception ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.common.jdbc.logging)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.common.jdbc.logging ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.common.logging)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.common.logging ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.common.logging.jakarta)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.common.logging.jakarta ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.common.logging.jdk14)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.common.logging.jdk14 ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.common.logging.log4j)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.common.logging.log4j ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.common.logging.nologging)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.common.logging.nologging ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.common.resources)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.common.resources ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.common.util)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.common.util ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.common.xml)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.common.xml ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.client)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.client ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.client.event)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.client.event ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.client.extensions)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.client.extensions ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.accessplan)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.accessplan ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.builder.xml)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.builder.xml ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.cache)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.cache ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.cache.fifo)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.cache.fifo ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.cache.lru)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.cache.lru ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.cache.memory)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.cache.memory ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.cache.oscache)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.cache.oscache ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.config)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.config ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.datasource)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.datasource ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.exchange)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.exchange ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.execution)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.execution ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.impl)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.impl ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.mapping.parameter)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.mapping.parameter ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.mapping.result)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.mapping.result ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.mapping.result.loader)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.mapping.result.loader
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.mapping.sql)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.mapping.sql ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.mapping.sql.dynamic)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.mapping.sql.dynamic
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.mapping.sql.dynamic.elements)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.mapping.sql.dynamic.elements
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.mapping.sql.raw)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.mapping.sql.raw ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.mapping.sql.simple)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.mapping.sql.simple
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.mapping.sql.stat)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.mapping.sql.stat ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.mapping.statement)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.mapping.statement ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.scope)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.scope ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.transaction)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.transaction ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.transaction.external)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.transaction.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.transaction.jdbc)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.transaction.jdbc ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.transaction.jta)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.transaction.jta ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.transaction.user)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.transaction.user ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.ibatis.sqlmap.engine.type)(version&gt;=2.3.4.726))' multiple='false' name='package' optional='false'>
    Import package com.ibatis.sqlmap.engine.type ;version=2.3.4.726
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.oscache.base)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.oscache.base
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.oscache.general)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.oscache.general
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.beans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.beans
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.dbcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.commons-beanutils/1.7.0.1' presentationname='Apache ServiceMix Bundles: commons-beanutils-1.7.0' symbolicname='org.apache.servicemix.bundles.commons-beanutils' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-beanutils/1.7.0_1/org.apache.servicemix.bundles.commons-beanutils-1.7.0_1.jar' version='1.7.0.1'>
  <description>
    This bundle simply wraps commons-beanutils-1.7.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    191680
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: commons-beanutils-1.7.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.commons-beanutils'/>
    <p n='version' t='version' v='1.7.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.beanutils'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.commons.collections.set,org.apache.commons.collections.list,org.apache.commons.collections.comparators,org.apache.commons.beanutils.converters,org.apache.commons.collections.keyvalue'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.beanutils.locale.converters'/>
    <p n='uses' v='org.apache.commons.beanutils,org.apache.commons.logging,org.apache.commons.beanutils.locale'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.beanutils.converters'/>
    <p n='uses' v='org.apache.commons.beanutils'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.beanutils.locale'/>
    <p n='uses' v='org.apache.commons.beanutils,org.apache.commons.beanutils.locale.converters,org.apache.commons.logging'/>
    <p n='version' t='version' v='1.7.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.beanutils)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.beanutils ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.beanutils.converters)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.beanutils.converters ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.beanutils.locale)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.beanutils.locale ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.beanutils.locale.converters)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.beanutils.locale.converters
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.comparators)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.collections.comparators
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.keyvalue)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.collections.keyvalue
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.list)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.collections.list
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.set)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.collections.set
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.xalan-serializer/2.7.1.1' presentationname='Apache ServiceMix Bundles: serializer-2.7.1' symbolicname='org.apache.servicemix.bundles.xalan-serializer' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.xalan-serializer/2.7.1_1/org.apache.servicemix.bundles.xalan-serializer-2.7.1_1.jar' version='2.7.1.1'>
  <description>
    This bundle simply wraps serializer-2.7.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    285822
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: serializer-2.7.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.xalan-serializer'/>
    <p n='version' t='version' v='2.7.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.serializer'/>
    <p n='uses' v='org.apache.xml.serializer.utils,org.apache.xml.serializer.dom3,org.w3c.dom,org.xml.sax,org.w3c.dom.ls,org.xml.sax.ext,javax.xml.transform,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.7.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.serializer.utils'/>
    <p n='uses' v='javax.xml.transform,org.w3c.dom,org.xml.sax'/>
    <p n='version' t='version' v='2.7.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.serializer.dom3'/>
    <p n='uses' v='org.apache.xml.serializer.utils,org.w3c.dom.traversal,org.w3c.dom,org.xml.sax,org.apache.xml.serializer,org.w3c.dom.ls,org.xml.sax.ext,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.7.1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.serializer)(version&gt;=2.7.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.serializer ;version=2.7.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.serializer.dom3)(version&gt;=2.7.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.serializer.dom3 ;version=2.7.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.serializer.utils)(version&gt;=2.7.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.serializer.utils ;version=2.7.1
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.tagsoup/1.2.0.1' presentationname='Apache ServiceMix Bundles: tagsoup-1.2' symbolicname='org.apache.servicemix.bundles.tagsoup' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.tagsoup/1.2_1/org.apache.servicemix.bundles.tagsoup-1.2_1.jar' version='1.2.0.1'>
  <description>
    This bundle simply wraps tagsoup-1.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    97998
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: tagsoup-1.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.tagsoup'/>
    <p n='version' t='version' v='1.2.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.ccil.cowan.tagsoup'/>
    <p n='uses' v='org.xml.sax.ext,org.xml.sax.helpers,org.xml.sax'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.ccil.cowan.tagsoup.jaxp'/>
    <p n='uses' v='org.ccil.cowan.tagsoup,javax.xml.parsers,org.xml.sax.helpers,org.w3c.dom,org.xml.sax'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.ccil.cowan.tagsoup)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ccil.cowan.tagsoup
  </require>
  <require extend='false' filter='(&amp;(package=org.ccil.cowan.tagsoup.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ccil.cowan.tagsoup.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.qpid/1.0.0.incubating-M21_1' presentationname='Apache ServiceMix Bundles: qpid-1.0-incubating-M2.1' symbolicname='org.apache.servicemix.bundles.qpid' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.qpid/1.0-incubating-M2.1_1/org.apache.servicemix.bundles.qpid-1.0-incubating-M2.1_1.jar' version='1.0.0.incubating-M21_1'>
  <description>
    This bundle simply wraps qpid-1.0-incubating-M2.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    987932
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: qpid-1.0-incubating-M2.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.qpid'/>
    <p n='version' t='version' v='1.0.0.incubating-M21_1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.configuration'/>
    <p n='uses' v='org.apache.qpid'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.ssl'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.client.state.listener'/>
    <p n='uses' v='org.apache.qpid.client.protocol'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.client.vmbroker'/>
    <p n='uses' v='org.apache.qpid.client.transport,org.apache.qpid.protocol'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.client.handler'/>
    <p n='uses' v='org.apache.qpid.client.state,org.apache.qpid,org.apache.qpid.client,org.apache.qpid.framing.amqp_8_0,org.apache.qpid.framing,org.apache.qpid.client.protocol,org.apache.qpid.client.security,org.apache.qpid.client.message,org.slf4j,org.apache.qpid.common,javax.security.sasl,org.apache.qpid.protocol,org.apache.qpid.framing.amqp_0_9,javax.security.auth.callback'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.framing.abstraction'/>
    <p n='uses' v='org.apache.mina.common,org.apache.qpid.framing'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.framing.amqp_8_0'/>
    <p n='uses' v='org.apache.mina.common,org.slf4j,org.apache.qpid,org.apache.qpid.framing.abstraction,org.apache.qpid.protocol,org.apache.qpid.framing'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.framing'/>
    <p n='uses' v='org.apache.mina.common,org.apache.qpid,org.apache.qpid.framing.abstraction,org.apache.qpid.framing.amqp_8_0,org.slf4j,org.apache.qpid.protocol,org.apache.mina.filter.codec.demux,org.apache.qpid.framing.amqp_0_9,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.jms'/>
    <p n='uses' v='org.apache.qpid.jms.failover,org.slf4j,org.apache.qpid.client,org.apache.qpid.framing,javax.jms'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.client.security'/>
    <p n='uses' v='org.apache.qpid.client.protocol,org.apache.qpid.util,org.slf4j,javax.security.sasl,javax.security.auth.callback'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.client.message'/>
    <p n='uses' v='org.apache.qpid.url,org.apache.mina.common,org.apache.qpid,org.apache.qpid.client,org.apache.qpid.framing,org.apache.commons.collections.map,org.apache.qpid.jms,org.slf4j,org.apache.qpid.protocol,javax.jms'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.common'/>
    <p n='uses' v='org.slf4j,org.apache.qpid.framing'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.protocol'/>
    <p n='uses' v='org.apache.qpid,org.apache.qpid.framing'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.codec'/>
    <p n='uses' v='org.apache.mina.common,org.apache.qpid.framing,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.url'/>
    <p n='uses' v='org.slf4j,org.apache.qpid.framing,org.apache.qpid.exchange'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.client.state'/>
    <p n='uses' v='org.apache.qpid.client.protocol,org.slf4j,org.apache.qpid,org.apache.qpid.protocol,org.apache.qpid.framing'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.jms.failover'/>
    <p n='uses' v='org.apache.qpid.jms,org.slf4j'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid'/>
    <p n='uses' v='org.apache.qpid.protocol,org.apache.qpid.framing'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.client'/>
    <p n='uses' v='org.apache.qpid.client.state.listener,org.apache.qpid.framing,javax.naming.spi,org.apache.qpid.jms,javax.naming,org.apache.qpid.client.message,org.slf4j,org.apache.qpid.common,org.apache.qpid.protocol,org.apache.qpid.url,org.apache.mina.common,org.apache.qpid.client.state,org.apache.qpid,org.apache.qpid.exchange,org.apache.qpid.client.protocol,org.apache.qpid.client.transport,org.apache.qpid.client.util,org.apache.qpid.client.failover,org.apache.qpid.framing.amqp_0_9,javax.jms'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.jndi'/>
    <p n='uses' v='org.apache.qpid.url,org.apache.qpid.client,org.apache.qpid.framing,javax.naming.spi,org.apache.qpid.exchange,javax.naming,org.slf4j,javax.jms'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.exchange'/>
    <p n='uses' v='org.apache.qpid.framing'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.client.protocol'/>
    <p n='uses' v='org.apache.qpid.ssl,org.apache.qpid.client.state.listener,org.apache.qpid.client.handler,org.apache.qpid.framing,org.apache.qpid.jms,org.apache.qpid.client.message,org.slf4j,javax.security.sasl,org.apache.qpid.protocol,org.apache.mina.filter.codec,org.apache.mina.filter.executor,org.apache.qpid.codec,org.apache.mina.common,org.apache.qpid.client.state,org.apache.qpid,org.apache.qpid.client,org.apache.qpid.pool,org.apache.mina.filter,org.apache.qpid.client.failover,javax.jms,javax.net.ssl'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.client.security.amqplain'/>
    <p n='uses' v='javax.security.sasl,org.apache.qpid.framing,javax.security.auth.callback'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.client.transport'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.apache.mina.common,org.apache.qpid.client.vmbroker,org.apache.qpid,org.apache.mina.transport.socket.nio,org.apache.qpid.client.protocol,org.apache.qpid.jms,org.apache.qpid.pool,org.slf4j,org.apache.qpid.protocol'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.pool'/>
    <p n='uses' v='org.apache.mina.common,org.slf4j,org.apache.mina.filter'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.util'/>
    <p n='uses' v='org.slf4j'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.client.security.crammd5hashed'/>
    <p n='uses' v='javax.security.sasl,javax.security.auth.callback'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.client.util'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.client.failover'/>
    <p n='uses' v='org.apache.qpid.client.protocol,org.apache.mina.common,org.apache.qpid.client.state,org.slf4j,org.apache.qpid,org.apache.qpid.client'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.qpid.framing.amqp_0_9'/>
    <p n='uses' v='org.apache.mina.common,org.slf4j,org.apache.qpid,org.apache.qpid.framing.abstraction,org.apache.qpid.protocol,org.apache.qpid.framing'/>
    <p n='version' t='version' v='1.0.0.incubating-M21'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.sasl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.sasl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.map)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.map
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.demux)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.demux
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.executor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.executor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.socket.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.vmpipe
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.client)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.client ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.client.failover)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.client.failover ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.client.handler)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.client.handler ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.client.message)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.client.message ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.client.protocol)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.client.protocol ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.client.security)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.client.security ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.client.security.amqplain)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.client.security.amqplain ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.client.security.crammd5hashed)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.client.security.crammd5hashed
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.client.state)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.client.state ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.client.state.listener)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.client.state.listener ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.client.transport)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.client.transport ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.client.util)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.client.util ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.client.vmbroker)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.client.vmbroker ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.codec)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.codec ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.common)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.common ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.configuration)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.configuration ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.exchange)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.exchange ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.framing)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.framing ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.framing.abstraction)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.framing.abstraction ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.framing.amqp_0_9)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.framing.amqp_0_9 ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.framing.amqp_8_0)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.framing.amqp_8_0 ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.jms)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.jms ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.jms.failover)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.jms.failover ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.jndi)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.jndi ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.pool)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.pool ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.protocol)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.protocol ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.ssl)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.ssl ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.url)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.url ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.qpid.util)(version&gt;=1.0.0.incubating-M21))' multiple='false' name='package' optional='false'>
    Import package org.apache.qpid.util ;version=1.0.0.incubating-M21
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jaxp-ri/1.4.2.1' presentationname='Apache ServiceMix Bundles: jaxp-ri-1.4.2' symbolicname='org.apache.servicemix.bundles.jaxp-ri' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jaxp-ri/1.4.2_1/org.apache.servicemix.bundles.jaxp-ri-1.4.2_1.jar' version='1.4.2.1'>
  <description>
    This bundle simply wraps jaxp-ri-1.4.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    4559353
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: jaxp-ri-1.4.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jaxp-ri'/>
    <p n='version' t='version' v='1.4.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.dtm.ref.sax2dtm'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.utils,org.xml.sax,com.sun.org.apache.xml.internal.dtm,org.xml.sax.ext,com.sun.org.apache.xml.internal.res,com.sun.org.apache.xml.internal.dtm.ref,com.sun.org.apache.xml.internal.serializer,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.dv.util'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xs.datatypes,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.functions'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.axes,com.sun.org.apache.xalan.internal.res,org.xml.sax,com.sun.org.apache.xpath.internal.res,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xpath.internal.objects,com.sun.org.apache.xpath.internal.compiler,javax.xml.transform,com.sun.org.apache.xpath.internal.patterns,com.sun.org.apache.xml.internal.utils,com.sun.org.apache.xpath.internal'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.jaxp.validation'/>
    <p n='uses' v='org.w3c.dom.ls,com.sun.org.apache.xerces.internal.dom,javax.xml.transform,com.sun.org.apache.xerces.internal.impl.dv,javax.xml.validation,com.sun.org.apache.xerces.internal.xni,javax.xml.parsers,com.sun.org.apache.xerces.internal.xni.parser,javax.xml.transform.stream,com.sun.org.apache.xerces.internal.xs,com.sun.org.apache.xerces.internal.impl.xs.util,org.xml.sax,com.sun.org.apache.xerces.internal.xni.grammars,org.w3c.dom,javax.xml.transform.dom,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.validation,com.sun.org.apache.xerces.internal.impl.xs,javax.xml.transform.sax,com.sun.org.apache.xerces.internal.impl.msg,com.sun.org.apache.xerces.internal.impl,org.xml.sax.ext,com.sun.org.apache.xerces.internal.parsers,javax.xml.transform.stax'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.extensions'/>
    <p n='uses' v='org.w3c.dom.traversal,com.sun.org.apache.xml.internal.utils,org.w3c.dom,com.sun.org.apache.xpath.internal,com.sun.org.apache.xpath.internal.objects,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.resolver'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.resolver.readers,javax.xml.parsers,com.sun.org.apache.xml.internal.resolver.helpers'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.operations'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.axes,com.sun.org.apache.xalan.internal.res,com.sun.org.apache.xml.internal.utils,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xpath.internal,com.sun.org.apache.xpath.internal.objects,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.bcel.internal.util'/>
    <p n='uses' v='com.sun.org.apache.bcel.internal,com.sun.org.apache.bcel.internal.generic,com.sun.org.apache.bcel.internal.classfile,com.sun.org.apache.regexp.internal'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.bcel.internal.verifier.exc'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.res'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.xs.datatypes'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xni,javax.xml.namespace,com.sun.org.apache.xerces.internal.xs,javax.xml.datatype'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.dom'/>
    <p n='uses' v='org.w3c.dom.ls,org.w3c.dom.events,com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs,com.sun.org.apache.xml.internal.serialize,com.sun.org.apache.xerces.internal.impl.xs.util,com.sun.org.apache.xerces.internal.xni.grammars,com.sun.org.apache.xerces.internal.impl.dv.xs,org.w3c.dom,com.sun.org.apache.xerces.internal.impl.dtd,com.sun.org.apache.xerces.internal.dom.events,com.sun.org.apache.xerces.internal.util,org.w3c.dom.traversal,com.sun.org.apache.xerces.internal.impl.validation,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.impl.msg,com.sun.org.apache.xerces.internal.parsers,org.w3c.dom.ranges'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.bcel.internal.classfile'/>
    <p n='uses' v='com.sun.org.apache.bcel.internal,com.sun.org.apache.bcel.internal.generic,com.sun.org.apache.bcel.internal.util'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.dv.dtd'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.dtm.ref.dom2dtm'/>
    <p n='uses' v='javax.xml.transform.dom,com.sun.org.apache.xml.internal.utils,org.xml.sax,com.sun.org.apache.xml.internal.dtm,org.xml.sax.ext,com.sun.org.apache.xml.internal.res,org.w3c.dom,com.sun.org.apache.xml.internal.dtm.ref,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.bcel.internal.verifier.structurals'/>
    <p n='uses' v='com.sun.org.apache.bcel.internal,com.sun.org.apache.bcel.internal.generic,com.sun.org.apache.bcel.internal.verifier.exc,com.sun.org.apache.bcel.internal.classfile,com.sun.org.apache.bcel.internal.verifier'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.domapi'/>
    <p n='uses' v='org.w3c.dom.traversal,com.sun.org.apache.xml.internal.utils,org.w3c.dom.xpath,com.sun.org.apache.xpath.internal.res,com.sun.org.apache.xpath.internal,org.w3c.dom,com.sun.org.apache.xpath.internal.objects,org.w3c.dom.events,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.xs.identity'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.xs.util,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.impl.xpath,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.serializer.utils'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.xni'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xni.parser'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.bcel.internal.verifier.statics'/>
    <p n='uses' v='com.sun.org.apache.bcel.internal,com.sun.org.apache.bcel.internal.generic,com.sun.org.apache.bcel.internal.verifier.exc,com.sun.org.apache.bcel.internal.classfile,com.sun.org.apache.bcel.internal.verifier'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.xpath'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.xni'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.xni.parser'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xni'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.serializer'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.ext,com.sun.org.apache.xml.internal.serializer.utils,org.xml.sax.helpers,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.serialize'/>
    <p n='uses' v='org.w3c.dom.ls,org.xml.sax,org.w3c.dom.html,org.w3c.dom,com.sun.org.apache.xerces.internal.dom,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl,org.xml.sax.ext,org.xml.sax.helpers,com.sun.org.apache.xerces.internal.xni'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.axes'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.functions,com.sun.org.apache.xalan.internal.res,org.xml.sax,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xpath.internal.operations,org.w3c.dom,com.sun.org.apache.xpath.internal.objects,com.sun.org.apache.xpath.internal.compiler,javax.xml.transform,org.w3c.dom.traversal,com.sun.org.apache.xpath.internal.patterns,com.sun.org.apache.xml.internal.utils,com.sun.org.apache.xpath.internal'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.xs.util'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.xni.grammars,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.jaxp'/>
    <p n='uses' v='org.w3c.dom.ls,com.sun.org.apache.xerces.internal.xni.grammars,org.xml.sax,com.sun.org.apache.xerces.internal.jaxp.validation,org.w3c.dom,com.sun.org.apache.xerces.internal.dom,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.xs.opti,com.sun.org.apache.xerces.internal.impl.validation,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.impl,javax.xml.validation,com.sun.org.apache.xerces.internal.parsers,com.sun.org.apache.xerces.internal.xni,org.xml.sax.helpers,javax.xml.parsers,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.lib'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.axes,com.sun.org.apache.xalan.internal.res,org.xml.sax,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xalan.internal.extensions,org.w3c.dom,com.sun.org.apache.xpath.internal.objects,javax.xml.transform,org.w3c.dom.traversal,com.sun.org.apache.xml.internal.utils,javax.xml.parsers,com.sun.org.apache.xpath.internal,com.sun.org.apache.xml.internal.dtm.ref,com.sun.org.apache.xalan.internal.xslt'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.res'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.res'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.xinclude'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xni.grammars,com.sun.org.apache.xerces.internal.impl.dtd,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xpointer,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.impl.io'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.dv.xs'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.impl.xs.util,com.sun.org.apache.xerces.internal.impl.dv.util,com.sun.org.apache.xerces.internal.impl.xpath.regex,javax.xml.namespace,org.w3c.dom,com.sun.org.apache.xerces.internal.xs.datatypes,javax.xml.datatype,com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.jaxp.datatype,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc'/>
    <p n='uses' v='org.xml.sax,com.sun.org.apache.xml.internal.dtm,org.w3c.dom,com.sun.org.apache.xml.internal.serializer,com.sun.org.apache.xalan.internal.xsltc.runtime'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.internal.stream.events'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,javax.xml.stream.events,com.sun.xml.internal.stream.util,com.sun.org.apache.xerces.internal.xni,javax.xml.namespace,javax.xml.stream.util,com.sun.xml.internal.stream.dtd.nonvalidating,javax.xml.stream'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.dom.events'/>
    <p n='uses' v='org.w3c.dom,org.w3c.dom.events'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.bcel.internal.verifier'/>
    <p n='uses' v='javax.swing.border,com.sun.org.apache.bcel.internal.classfile,javax.swing.event,com.sun.org.apache.bcel.internal.verifier.structurals,com.sun.org.apache.bcel.internal,com.sun.org.apache.bcel.internal.generic,com.sun.org.apache.bcel.internal.verifier.statics,javax.swing'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.internal.stream.dtd.nonvalidating'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.util'/>
    <p n='uses' v='org.w3c.dom.ls,com.sun.org.apache.xerces.internal.jaxp.validation,com.sun.org.apache.xml.internal.resolver,javax.xml.namespace,com.sun.org.apache.xerces.internal.dom,javax.xml.transform,com.sun.org.apache.xerces.internal.xni,javax.xml.parsers,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs,com.sun.org.apache.xerces.internal.impl.xs.util,com.sun.org.apache.xerces.internal.jaxp,com.sun.org.apache.xerces.internal.xni.grammars,org.xml.sax,org.w3c.dom,com.sun.org.apache.xml.internal.resolver.readers,com.sun.org.apache.xerces.internal.impl.xs.opti,com.sun.xml.internal.stream,com.sun.org.apache.xerces.internal.impl,org.xml.sax.ext'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.xs.opti'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xni.grammars,org.w3c.dom,com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.impl.validation,com.sun.org.apache.xerces.internal.impl.msg,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.parsers,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.xs'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.impl.xs.util,org.w3c.dom.ls,com.sun.org.apache.xerces.internal.xni.grammars,org.xml.sax,com.sun.org.apache.xerces.internal.impl.dv.xs,org.w3c.dom,com.sun.org.apache.xerces.internal.dom,com.sun.org.apache.xerces.internal.impl.xs.models,com.sun.org.apache.xerces.internal.impl.xs.traversers,com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.validation,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.impl.xs.identity,com.sun.org.apache.xerces.internal.parsers,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.patterns'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.axes,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xpath.internal,com.sun.org.apache.xpath.internal.objects,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.internal.stream'/>
    <p n='uses' v='javax.xml.stream.events,com.sun.xml.internal.stream.writers,com.sun.xml.internal.stream.events,javax.xml.transform,javax.xml.transform.dom,com.sun.org.apache.xerces.internal.util,com.sun.xml.internal.stream.util,com.sun.org.apache.xerces.internal.impl.msg,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.xni,javax.xml.transform.stax,com.sun.org.apache.xerces.internal.xni.parser,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.dtd.models'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xni'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.trax'/>
    <p n='uses' v='javax.xml.stream.events,com.sun.org.apache.xalan.internal.xsltc.compiler.util,javax.xml.namespace,com.sun.org.apache.xalan.internal.xsltc.dom,javax.xml.transform,javax.xml.parsers,javax.xml.transform.stream,com.sun.org.apache.xml.internal.serializer,javax.xml.stream,com.sun.org.apache.xerces.internal.jaxp,org.xml.sax,com.sun.org.apache.xml.internal.dtm,org.w3c.dom,com.sun.org.apache.xalan.internal.xsltc,javax.xml.transform.dom,javax.xml.transform.sax,com.sun.org.apache.xml.internal.utils,org.xml.sax.ext,org.xml.sax.helpers,com.sun.org.apache.xalan.internal.xsltc.compiler,javax.xml.transform.stax,com.sun.org.apache.xalan.internal.xsltc.runtime.output,com.sun.org.apache.xalan.internal.xsltc.runtime'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.internal.stream.util'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl'/>
    <p n='uses' v='javax.xml.stream.events,org.xml.sax,com.sun.org.apache.xerces.internal.xni.grammars,javax.xml.namespace,com.sun.org.apache.xerces.internal.impl.dtd,com.sun.xml.internal.stream.events,com.sun.xml.internal.stream.dtd.nonvalidating,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.validation,com.sun.xml.internal.stream,com.sun.org.apache.xerces.internal.xni,com.sun.xml.internal.stream.dtd,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.impl.io,javax.xml.stream'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.jaxp.datatype'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,javax.xml.namespace,javax.xml.datatype'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.parsers'/>
    <p n='uses' v='org.w3c.dom.ls,com.sun.org.apache.xerces.internal.xni.grammars,org.xml.sax,com.sun.org.apache.xerces.internal.xinclude,org.w3c.dom,com.sun.org.apache.xerces.internal.impl.dtd,com.sun.org.apache.xerces.internal.dom,com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.impl.validation,com.sun.org.apache.xerces.internal.impl.msg,com.sun.org.apache.xerces.internal.impl,org.xml.sax.ext,com.sun.org.apache.xerces.internal.xpointer,com.sun.org.apache.xerces.internal.xni,org.xml.sax.helpers,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.resolver.helpers'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.dtm.ref'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.dtm.ref.sax2dtm,org.xml.sax,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xml.internal.res,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.w3c.dom.traversal,javax.xml.transform.sax,com.sun.org.apache.xml.internal.dtm.ref.dom2dtm,com.sun.org.apache.xml.internal.utils,com.sun.org.apache.xerces.internal.parsers,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.parsers,com.sun.org.apache.xpath.internal,javax.xml.transform.stream,com.sun.org.apache.xml.internal.serialize'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.templates'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.utils'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.res'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.res'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.java_cup.internal.runtime'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.xpath.regex'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.cmdline'/>
    <p n='uses' v='org.xml.sax,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xalan.internal.xsltc.cmdline.getopt,com.sun.org.apache.xalan.internal.xsltc.compiler.util,com.sun.org.apache.xalan.internal.xsltc.dom,com.sun.org.apache.xalan.internal.xsltc,javax.xml.transform,javax.xml.transform.sax,javax.xml.parsers,com.sun.org.apache.xalan.internal.xsltc.compiler,com.sun.org.apache.xalan.internal.xsltc.runtime.output,com.sun.org.apache.xalan.internal.xsltc.runtime,com.sun.org.apache.xml.internal.serializer'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.compiler.util'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.utils,com.sun.org.apache.bcel.internal.generic,com.sun.org.apache.xalan.internal.xsltc.compiler'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.utils.res'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.client'/>
    <p n='uses' v='com.sun.org.apache.xalan.internal.res,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.dom'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.dtm.ref.sax2dtm,com.sun.org.apache.xml.internal.res,javax.xml.transform,javax.xml.parsers,javax.xml.transform.stream,com.sun.org.apache.xml.internal.serializer,javax.xml.stream,org.xml.sax,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xalan.internal.xsltc.util,org.w3c.dom,com.sun.org.apache.xalan.internal.xsltc,javax.xml.transform.dom,javax.xml.transform.sax,com.sun.org.apache.xml.internal.utils,com.sun.org.apache.xalan.internal.xsltc.trax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.transform.stax,com.sun.org.apache.xml.internal.dtm.ref,com.sun.org.apache.xalan.internal.xsltc.runtime'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.compiler'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.axes,com.sun.org.apache.xpath.internal.functions,com.sun.org.apache.xalan.internal.res,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xpath.internal.operations,com.sun.org.apache.xpath.internal.objects,javax.xml.transform,com.sun.org.apache.xpath.internal.patterns,com.sun.org.apache.xml.internal.utils,com.sun.org.apache.xpath.internal.domapi,com.sun.org.apache.xpath.internal'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.xs.models'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.impl.dtd.models,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.dv'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.impl.xs.util,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.bcel.internal'/>
    <p n='uses' v='com.sun.org.apache.bcel.internal.util,com.sun.org.apache.bcel.internal.classfile'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.html.internal.dom'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom.html,org.w3c.dom,com.sun.org.apache.xerces.internal.dom'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.internal.stream.dtd'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser,com.sun.xml.internal.stream.dtd.nonvalidating'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.xs'/>
    <p n='uses' v='org.w3c.dom.ls,org.w3c.dom'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.io'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,com.sun.xml.internal.stream.util,com.sun.org.apache.xerces.internal.impl.msg'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.xni.grammars'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.dtm'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.utils,org.xml.sax,org.xml.sax.ext,com.sun.org.apache.xml.internal.res,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.cmdline.getopt'/>
    <p n='uses' v='com.sun.org.apache.xalan.internal.xsltc.compiler.util'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.util'/>
    <p n='uses' v='com.sun.java_cup.internal'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.internal.stream.writers'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,com.sun.org.apache.xerces.internal.util,com.sun.xml.internal.stream.util,com.sun.org.apache.xerces.internal.impl,org.xml.sax.helpers,com.sun.org.apache.xerces.internal.xni,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.dtd'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xni.grammars,com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.validation,com.sun.org.apache.xerces.internal.impl.dtd.models,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.impl.msg,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.objects'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.axes,com.sun.org.apache.xalan.internal.res,org.xml.sax,com.sun.org.apache.xml.internal.dtm,org.w3c.dom,javax.xml.transform,org.w3c.dom.traversal,com.sun.org.apache.xml.internal.utils,org.xml.sax.ext,com.sun.org.apache.xpath.internal,com.sun.org.apache.xml.internal.dtm.ref'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.resolver.tools'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,com.sun.org.apache.xml.internal.resolver,org.xml.sax.helpers,javax.xml.parsers,com.sun.org.apache.xml.internal.resolver.helpers,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.regexp.internal'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.jaxp'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.functions,com.sun.org.apache.xalan.internal.res,org.xml.sax,javax.xml.namespace,org.w3c.dom,com.sun.org.apache.xpath.internal.objects,javax.xml.xpath,javax.xml.transform,org.w3c.dom.traversal,com.sun.org.apache.xml.internal.utils,javax.xml.parsers,com.sun.org.apache.xpath.internal'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.resolver.readers'/>
    <p n='uses' v='org.xml.sax,com.sun.org.apache.xml.internal.resolver,org.xml.sax.helpers,javax.xml.parsers,com.sun.org.apache.xml.internal.resolver.helpers,org.w3c.dom'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.xs.traversers'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.impl.xs.util,com.sun.org.apache.xerces.internal.xni.grammars,org.xml.sax,com.sun.org.apache.xerces.internal.impl.dv.xs,org.w3c.dom,com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.impl.xs.opti,com.sun.org.apache.xerces.internal.impl.validation,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.impl.xs.identity,com.sun.org.apache.xerces.internal.parsers,org.xml.sax.helpers,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.impl.xpath,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.validation'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.xni'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.utils'/>
    <p n='uses' v='org.xml.sax,com.sun.org.apache.xml.internal.res,org.w3c.dom,javax.xml.transform,com.sun.org.apache.xml.internal.dtm.ref.dom2dtm,javax.xml.transform.sax,org.xml.sax.ext,javax.xml.parsers,org.xml.sax.helpers,com.sun.org.apache.xml.internal.dtm.ref'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.bcel.internal.generic'/>
    <p n='uses' v='com.sun.org.apache.bcel.internal,com.sun.org.apache.bcel.internal.util,com.sun.org.apache.bcel.internal.classfile'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.msg'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.xpointer'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.xinclude,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.compiler'/>
    <p n='uses' v='com.sun.java_cup.internal.runtime,org.xml.sax,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.bcel.internal.util,com.sun.org.apache.xalan.internal.xsltc.compiler.util,org.w3c.dom,com.sun.org.apache.bcel.internal.classfile,com.sun.org.apache.xml.internal.utils,com.sun.org.apache.bcel.internal.generic,javax.xml.parsers,org.xml.sax.helpers,com.sun.org.apache.xml.internal.serializer,com.sun.org.apache.xalan.internal.xsltc.runtime'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.dtm.ref.sax2dtm,com.sun.org.apache.xpath.internal.functions,com.sun.org.apache.xalan.internal.res,com.sun.org.apache.xalan.internal.extensions,com.sun.org.apache.xpath.internal.operations,com.sun.org.apache.xpath.internal.compiler,javax.xml.transform,javax.xml.parsers,javax.xml.transform.stream,com.sun.org.apache.xpath.internal.axes,org.xml.sax,com.sun.org.apache.xml.internal.dtm,org.w3c.dom,com.sun.org.apache.xpath.internal.objects,org.w3c.dom.traversal,javax.xml.transform.sax,com.sun.org.apache.xpath.internal.patterns,com.sun.org.apache.xml.internal.utils,org.xml.sax.helpers,com.sun.org.apache.xml.internal.dtm.ref'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.runtime.output'/>
    <p n='uses' v='com.sun.org.apache.xalan.internal.xsltc.trax,org.xml.sax,org.xml.sax.ext,javax.xml.parsers,org.w3c.dom,com.sun.org.apache.xml.internal.serializer,javax.xml.stream'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xslt'/>
    <p n='uses' v='com.sun.org.apache.xalan.internal.res,org.xml.sax,com.sun.org.apache.xalan.internal,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,com.sun.org.apache.xml.internal.utils,javax.xml.parsers,org.xml.sax.helpers,javax.xml.transform.stream'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.runtime'/>
    <p n='uses' v='org.xml.sax,com.sun.org.apache.xml.internal.dtm,org.w3c.dom,com.sun.org.apache.xalan.internal.xsltc.dom,com.sun.org.apache.xalan.internal.xsltc,javax.xml.transform,javax.xml.transform.dom,com.sun.org.apache.xml.internal.utils,javax.xml.parsers,com.sun.org.apache.xml.internal.dtm.ref,com.sun.org.apache.xalan.internal.xsltc.runtime.output,com.sun.org.apache.xml.internal.serializer'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.java_cup.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.java_cup.internal
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.java_cup.internal.runtime)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.java_cup.internal.runtime ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.bcel.internal)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.bcel.internal ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.bcel.internal.classfile)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.bcel.internal.classfile ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.bcel.internal.generic)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.bcel.internal.generic ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.bcel.internal.util)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.bcel.internal.util ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.bcel.internal.verifier)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.bcel.internal.verifier ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.bcel.internal.verifier.exc)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.bcel.internal.verifier.exc
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.bcel.internal.verifier.statics)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.bcel.internal.verifier.statics
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.bcel.internal.verifier.structurals)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.bcel.internal.verifier.structurals
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.html.internal.dom)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.html.internal.dom ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.regexp.internal)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.regexp.internal ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.client)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.client ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.extensions)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.extensions
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.lib)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.lib ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.res)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.res ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.templates)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.templates
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xslt)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xslt ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.cmdline)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.cmdline
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.cmdline.getopt)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.cmdline.getopt
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.compiler)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.compiler
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.compiler.util)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.compiler.util
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.dom)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.dom
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.runtime)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.runtime.output)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.runtime.output
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.trax)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.trax
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.util)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.util
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.dom)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.dom ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.dom.events)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.dom.events
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.dtd)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.dtd
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.dtd.models)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.dtd.models
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.dv)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.dv ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.dv.dtd)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.dv.dtd
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.dv.util)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.dv.util
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.dv.xs)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.dv.xs
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.io)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.io ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.msg)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.msg
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.validation)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.validation
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.xpath)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.xpath
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.xpath.regex)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.xpath.regex
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.xs)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.xs ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.xs.identity)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.xs.identity
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.xs.models)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.xs.models
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.xs.opti)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.xs.opti
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.xs.traversers)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.xs.traversers
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.xs.util)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.xs.util
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.jaxp)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.jaxp ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.jaxp.datatype)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.jaxp.datatype
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.jaxp.validation)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.jaxp.validation
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.parsers)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.parsers ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.util)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.util ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.xinclude)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.xinclude
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.xni)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.xni ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.xni.grammars)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.xni.grammars
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.xni.parser)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.xni.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.xpointer)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.xpointer
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.xs)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.xs ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.xs.datatypes)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.xs.datatypes
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.dtm)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.dtm ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.dtm.ref)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.dtm.ref ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.dtm.ref.dom2dtm)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.dtm.ref.dom2dtm
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.dtm.ref.sax2dtm)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.dtm.ref.sax2dtm
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.res)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.res ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.resolver)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.resolver ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.resolver.helpers)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.resolver.helpers
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.resolver.readers)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.resolver.readers
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.resolver.tools)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.resolver.tools
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.serialize)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.serialize ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.serializer)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.serializer ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.serializer.utils)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.serializer.utils
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.utils)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.utils ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.utils.res)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.utils.res ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.axes)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.axes ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.compiler)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.compiler ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.domapi)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.domapi ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.functions)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.functions
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.jaxp)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.jaxp ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.objects)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.objects ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.operations)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.operations
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.patterns)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.patterns ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.res)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.res ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.internal.stream)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.internal.stream ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.internal.stream.dtd)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.internal.stream.dtd ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.internal.stream.dtd.nonvalidating)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.internal.stream.dtd.nonvalidating
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.internal.stream.events)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.internal.stream.events ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.internal.stream.util)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.internal.stream.util ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.internal.stream.writers)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.internal.stream.writers ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.border)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.border
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.event
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.transform.stax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.events)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.events
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.html)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.html
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ranges)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ranges
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.w3c.dom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jaxp-ri/1.4.2.2' presentationname='Apache ServiceMix Bundles: jaxp-ri-1.4.2' symbolicname='org.apache.servicemix.bundles.jaxp-ri' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jaxp-ri/1.4.2_2/org.apache.servicemix.bundles.jaxp-ri-1.4.2_2.jar' version='1.4.2.2'>
  <description>
    This bundle simply wraps jaxp-ri-1.4.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    4561476
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: jaxp-ri-1.4.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jaxp-ri'/>
    <p n='version' t='version' v='1.4.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.dtm.ref.sax2dtm'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.utils,org.xml.sax,com.sun.org.apache.xml.internal.dtm,org.xml.sax.ext,com.sun.org.apache.xml.internal.res,com.sun.org.apache.xml.internal.dtm.ref,com.sun.org.apache.xml.internal.serializer,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.dv.util'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xs.datatypes,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.functions'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.axes,com.sun.org.apache.xalan.internal.res,org.xml.sax,com.sun.org.apache.xpath.internal.res,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xpath.internal.objects,com.sun.org.apache.xpath.internal.compiler,javax.xml.transform,com.sun.org.apache.xpath.internal.patterns,com.sun.org.apache.xml.internal.utils,com.sun.org.apache.xpath.internal'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.jaxp.validation'/>
    <p n='uses' v='org.w3c.dom.ls,com.sun.org.apache.xerces.internal.dom,javax.xml.transform,com.sun.org.apache.xerces.internal.impl.dv,javax.xml.validation,com.sun.org.apache.xerces.internal.xni,javax.xml.parsers,com.sun.org.apache.xerces.internal.xni.parser,javax.xml.transform.stream,com.sun.org.apache.xerces.internal.xs,com.sun.org.apache.xerces.internal.impl.xs.util,org.xml.sax,com.sun.org.apache.xerces.internal.xni.grammars,org.w3c.dom,javax.xml.transform.dom,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.validation,com.sun.org.apache.xerces.internal.impl.xs,javax.xml.transform.sax,com.sun.org.apache.xerces.internal.impl.msg,com.sun.org.apache.xerces.internal.impl,org.xml.sax.ext,com.sun.org.apache.xerces.internal.parsers,javax.xml.transform.stax'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.extensions'/>
    <p n='uses' v='org.w3c.dom.traversal,com.sun.org.apache.xml.internal.utils,org.w3c.dom,com.sun.org.apache.xpath.internal,com.sun.org.apache.xpath.internal.objects,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.resolver'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.resolver.readers,javax.xml.parsers,com.sun.org.apache.xml.internal.resolver.helpers'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.operations'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.axes,com.sun.org.apache.xalan.internal.res,com.sun.org.apache.xml.internal.utils,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xpath.internal,com.sun.org.apache.xpath.internal.objects,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.bcel.internal.util'/>
    <p n='uses' v='com.sun.org.apache.bcel.internal,com.sun.org.apache.bcel.internal.generic,com.sun.org.apache.bcel.internal.classfile,com.sun.org.apache.regexp.internal'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.bcel.internal.verifier.exc'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.res'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.xs.datatypes'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xni,javax.xml.namespace,com.sun.org.apache.xerces.internal.xs,javax.xml.datatype'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.dom'/>
    <p n='uses' v='org.w3c.dom.ls,org.w3c.dom.events,com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs,com.sun.org.apache.xml.internal.serialize,com.sun.org.apache.xerces.internal.impl.xs.util,com.sun.org.apache.xerces.internal.xni.grammars,com.sun.org.apache.xerces.internal.impl.dv.xs,org.w3c.dom,com.sun.org.apache.xerces.internal.impl.dtd,com.sun.org.apache.xerces.internal.dom.events,com.sun.org.apache.xerces.internal.util,org.w3c.dom.traversal,com.sun.org.apache.xerces.internal.impl.validation,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.impl.msg,com.sun.org.apache.xerces.internal.parsers,org.w3c.dom.ranges'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.bcel.internal.classfile'/>
    <p n='uses' v='com.sun.org.apache.bcel.internal,com.sun.org.apache.bcel.internal.generic,com.sun.org.apache.bcel.internal.util'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.dv.dtd'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.dtm.ref.dom2dtm'/>
    <p n='uses' v='javax.xml.transform.dom,com.sun.org.apache.xml.internal.utils,org.xml.sax,com.sun.org.apache.xml.internal.dtm,org.xml.sax.ext,com.sun.org.apache.xml.internal.res,org.w3c.dom,com.sun.org.apache.xml.internal.dtm.ref,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.bcel.internal.verifier.structurals'/>
    <p n='uses' v='com.sun.org.apache.bcel.internal,com.sun.org.apache.bcel.internal.generic,com.sun.org.apache.bcel.internal.verifier.exc,com.sun.org.apache.bcel.internal.classfile,com.sun.org.apache.bcel.internal.verifier'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.domapi'/>
    <p n='uses' v='org.w3c.dom.traversal,com.sun.org.apache.xml.internal.utils,org.w3c.dom.xpath,com.sun.org.apache.xpath.internal.res,com.sun.org.apache.xpath.internal,org.w3c.dom,com.sun.org.apache.xpath.internal.objects,org.w3c.dom.events,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.xs.identity'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.xs.util,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.impl.xpath,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.serializer.utils'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.xni'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xni.parser'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.bcel.internal.verifier.statics'/>
    <p n='uses' v='com.sun.org.apache.bcel.internal,com.sun.org.apache.bcel.internal.generic,com.sun.org.apache.bcel.internal.verifier.exc,com.sun.org.apache.bcel.internal.classfile,com.sun.org.apache.bcel.internal.verifier'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.xpath'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.xni'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.xni.parser'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xni'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.serializer'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.ext,com.sun.org.apache.xml.internal.serializer.utils,org.xml.sax.helpers,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.serialize'/>
    <p n='uses' v='org.w3c.dom.ls,org.xml.sax,org.w3c.dom.html,org.w3c.dom,com.sun.org.apache.xerces.internal.dom,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl,org.xml.sax.ext,org.xml.sax.helpers,com.sun.org.apache.xerces.internal.xni'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.axes'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.functions,com.sun.org.apache.xalan.internal.res,org.xml.sax,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xpath.internal.operations,org.w3c.dom,com.sun.org.apache.xpath.internal.objects,com.sun.org.apache.xpath.internal.compiler,javax.xml.transform,org.w3c.dom.traversal,com.sun.org.apache.xpath.internal.patterns,com.sun.org.apache.xml.internal.utils,com.sun.org.apache.xpath.internal'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.xs.util'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.xni.grammars,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.jaxp'/>
    <p n='uses' v='org.w3c.dom.ls,com.sun.org.apache.xerces.internal.xni.grammars,org.xml.sax,com.sun.org.apache.xerces.internal.jaxp.validation,org.w3c.dom,com.sun.org.apache.xerces.internal.dom,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.xs.opti,com.sun.org.apache.xerces.internal.impl.validation,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.impl,javax.xml.validation,com.sun.org.apache.xerces.internal.parsers,com.sun.org.apache.xerces.internal.xni,org.xml.sax.helpers,javax.xml.parsers,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.lib'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.axes,com.sun.org.apache.xalan.internal.res,org.xml.sax,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xalan.internal.extensions,org.w3c.dom,com.sun.org.apache.xpath.internal.objects,javax.xml.transform,org.w3c.dom.traversal,com.sun.org.apache.xml.internal.utils,javax.xml.parsers,com.sun.org.apache.xpath.internal,com.sun.org.apache.xml.internal.dtm.ref,com.sun.org.apache.xalan.internal.xslt'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.res'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.res'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.xinclude'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xni.grammars,com.sun.org.apache.xerces.internal.impl.dtd,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xpointer,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.impl.io'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.dv.xs'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.impl.xs.util,com.sun.org.apache.xerces.internal.impl.dv.util,com.sun.org.apache.xerces.internal.impl.xpath.regex,javax.xml.namespace,org.w3c.dom,com.sun.org.apache.xerces.internal.xs.datatypes,javax.xml.datatype,com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.jaxp.datatype,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc'/>
    <p n='uses' v='org.xml.sax,com.sun.org.apache.xml.internal.dtm,org.w3c.dom,com.sun.org.apache.xml.internal.serializer,com.sun.org.apache.xalan.internal.xsltc.runtime'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.internal.stream.events'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,javax.xml.stream.events,com.sun.xml.internal.stream.util,com.sun.org.apache.xerces.internal.xni,javax.xml.namespace,javax.xml.stream.util,com.sun.xml.internal.stream.dtd.nonvalidating,javax.xml.stream'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.dom.events'/>
    <p n='uses' v='org.w3c.dom,org.w3c.dom.events'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.bcel.internal.verifier'/>
    <p n='uses' v='javax.swing.border,com.sun.org.apache.bcel.internal.classfile,javax.swing.event,com.sun.org.apache.bcel.internal.verifier.structurals,com.sun.org.apache.bcel.internal,com.sun.org.apache.bcel.internal.generic,com.sun.org.apache.bcel.internal.verifier.statics,javax.swing'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.internal.stream.dtd.nonvalidating'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.util'/>
    <p n='uses' v='org.w3c.dom.ls,com.sun.org.apache.xerces.internal.jaxp.validation,com.sun.org.apache.xml.internal.resolver,javax.xml.namespace,com.sun.org.apache.xerces.internal.dom,javax.xml.transform,com.sun.org.apache.xerces.internal.xni,javax.xml.parsers,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs,com.sun.org.apache.xerces.internal.impl.xs.util,com.sun.org.apache.xerces.internal.jaxp,com.sun.org.apache.xerces.internal.xni.grammars,org.xml.sax,org.w3c.dom,com.sun.org.apache.xml.internal.resolver.readers,com.sun.org.apache.xerces.internal.impl.xs.opti,com.sun.xml.internal.stream,com.sun.org.apache.xerces.internal.impl,org.xml.sax.ext'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.xs.opti'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xni.grammars,org.w3c.dom,com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.impl.validation,com.sun.org.apache.xerces.internal.impl.msg,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.parsers,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.xs'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.impl.xs.util,org.w3c.dom.ls,com.sun.org.apache.xerces.internal.xni.grammars,org.xml.sax,com.sun.org.apache.xerces.internal.impl.dv.xs,org.w3c.dom,com.sun.org.apache.xerces.internal.dom,com.sun.org.apache.xerces.internal.impl.xs.models,com.sun.org.apache.xerces.internal.impl.xs.traversers,com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.validation,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.impl.xs.identity,com.sun.org.apache.xerces.internal.parsers,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.patterns'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.axes,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xpath.internal,com.sun.org.apache.xpath.internal.objects,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.internal.stream'/>
    <p n='uses' v='javax.xml.stream.events,com.sun.xml.internal.stream.writers,com.sun.xml.internal.stream.events,javax.xml.transform,javax.xml.transform.dom,com.sun.org.apache.xerces.internal.util,com.sun.xml.internal.stream.util,com.sun.org.apache.xerces.internal.impl.msg,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.xni,javax.xml.transform.stax,com.sun.org.apache.xerces.internal.xni.parser,javax.xml.transform.stream,javax.xml.stream.util,javax.xml.stream'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.dtd.models'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xni'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.trax'/>
    <p n='uses' v='javax.xml.stream.events,com.sun.org.apache.xalan.internal.xsltc.compiler.util,javax.xml.namespace,com.sun.org.apache.xalan.internal.xsltc.dom,javax.xml.transform,javax.xml.parsers,javax.xml.transform.stream,com.sun.org.apache.xml.internal.serializer,javax.xml.stream,com.sun.org.apache.xerces.internal.jaxp,org.xml.sax,com.sun.org.apache.xml.internal.dtm,org.w3c.dom,com.sun.org.apache.xalan.internal.xsltc,javax.xml.transform.dom,javax.xml.transform.sax,com.sun.org.apache.xml.internal.utils,org.xml.sax.ext,org.xml.sax.helpers,com.sun.org.apache.xalan.internal.xsltc.compiler,javax.xml.transform.stax,com.sun.org.apache.xalan.internal.xsltc.runtime.output,com.sun.org.apache.xalan.internal.xsltc.runtime'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.internal.stream.util'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl'/>
    <p n='uses' v='javax.xml.stream.events,org.xml.sax,com.sun.org.apache.xerces.internal.xni.grammars,javax.xml.namespace,com.sun.org.apache.xerces.internal.impl.dtd,com.sun.xml.internal.stream.events,com.sun.xml.internal.stream.dtd.nonvalidating,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.validation,com.sun.xml.internal.stream,com.sun.org.apache.xerces.internal.xni,com.sun.xml.internal.stream.dtd,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.impl.io,javax.xml.stream'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.jaxp.datatype'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,javax.xml.namespace,javax.xml.datatype'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.parsers'/>
    <p n='uses' v='org.w3c.dom.ls,com.sun.org.apache.xerces.internal.xni.grammars,org.xml.sax,com.sun.org.apache.xerces.internal.xinclude,org.w3c.dom,com.sun.org.apache.xerces.internal.impl.dtd,com.sun.org.apache.xerces.internal.dom,com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.impl.validation,com.sun.org.apache.xerces.internal.impl.msg,com.sun.org.apache.xerces.internal.impl,org.xml.sax.ext,com.sun.org.apache.xerces.internal.xpointer,com.sun.org.apache.xerces.internal.xni,org.xml.sax.helpers,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.resolver.helpers'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.dtm.ref'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.dtm.ref.sax2dtm,org.xml.sax,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xml.internal.res,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.w3c.dom.traversal,javax.xml.transform.sax,com.sun.org.apache.xml.internal.dtm.ref.dom2dtm,com.sun.org.apache.xml.internal.utils,com.sun.org.apache.xerces.internal.parsers,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.parsers,com.sun.org.apache.xpath.internal,javax.xml.transform.stream,com.sun.org.apache.xml.internal.serialize'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.templates'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.utils'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.res'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.res'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.java_cup.internal.runtime'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.xpath.regex'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.cmdline'/>
    <p n='uses' v='org.xml.sax,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xalan.internal.xsltc.cmdline.getopt,com.sun.org.apache.xalan.internal.xsltc.compiler.util,com.sun.org.apache.xalan.internal.xsltc.dom,com.sun.org.apache.xalan.internal.xsltc,javax.xml.transform,javax.xml.transform.sax,javax.xml.parsers,com.sun.org.apache.xalan.internal.xsltc.compiler,com.sun.org.apache.xalan.internal.xsltc.runtime.output,com.sun.org.apache.xalan.internal.xsltc.runtime,com.sun.org.apache.xml.internal.serializer'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.compiler.util'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.utils,com.sun.org.apache.bcel.internal.generic,com.sun.org.apache.xalan.internal.xsltc.compiler'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.utils.res'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.client'/>
    <p n='uses' v='com.sun.org.apache.xalan.internal.res,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.dom'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.dtm.ref.sax2dtm,com.sun.org.apache.xml.internal.res,javax.xml.transform,javax.xml.parsers,javax.xml.transform.stream,com.sun.org.apache.xml.internal.serializer,javax.xml.stream,org.xml.sax,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xalan.internal.xsltc.util,org.w3c.dom,com.sun.org.apache.xalan.internal.xsltc,javax.xml.transform.dom,javax.xml.transform.sax,com.sun.org.apache.xml.internal.utils,com.sun.org.apache.xalan.internal.xsltc.trax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.transform.stax,com.sun.org.apache.xml.internal.dtm.ref,com.sun.org.apache.xalan.internal.xsltc.runtime'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.compiler'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.axes,com.sun.org.apache.xpath.internal.functions,com.sun.org.apache.xalan.internal.res,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.xpath.internal.operations,com.sun.org.apache.xpath.internal.objects,javax.xml.transform,com.sun.org.apache.xpath.internal.patterns,com.sun.org.apache.xml.internal.utils,com.sun.org.apache.xpath.internal.domapi,com.sun.org.apache.xpath.internal'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.xs.models'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.impl.dtd.models,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.dv'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.impl.xs.util,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.bcel.internal'/>
    <p n='uses' v='com.sun.org.apache.bcel.internal.util,com.sun.org.apache.bcel.internal.classfile'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.html.internal.dom'/>
    <p n='uses' v='org.xml.sax,org.w3c.dom.html,org.w3c.dom,com.sun.org.apache.xerces.internal.dom'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.internal.stream.dtd'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser,com.sun.xml.internal.stream.dtd.nonvalidating'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.xs'/>
    <p n='uses' v='org.w3c.dom.ls,org.w3c.dom'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.io'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util,com.sun.xml.internal.stream.util,com.sun.org.apache.xerces.internal.impl.msg'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.xni.grammars'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.dtm'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.utils,org.xml.sax,org.xml.sax.ext,com.sun.org.apache.xml.internal.res,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.cmdline.getopt'/>
    <p n='uses' v='com.sun.org.apache.xalan.internal.xsltc.compiler.util'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.util'/>
    <p n='uses' v='com.sun.java_cup.internal'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.internal.stream.writers'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,com.sun.org.apache.xerces.internal.util,com.sun.xml.internal.stream.util,com.sun.org.apache.xerces.internal.impl,org.xml.sax.helpers,com.sun.org.apache.xerces.internal.xni,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.dtd'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.xni.grammars,com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.validation,com.sun.org.apache.xerces.internal.impl.dtd.models,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.impl.msg,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.objects'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.axes,com.sun.org.apache.xalan.internal.res,org.xml.sax,com.sun.org.apache.xml.internal.dtm,org.w3c.dom,javax.xml.transform,org.w3c.dom.traversal,com.sun.org.apache.xml.internal.utils,org.xml.sax.ext,com.sun.org.apache.xpath.internal,com.sun.org.apache.xml.internal.dtm.ref'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.resolver.tools'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,com.sun.org.apache.xml.internal.resolver,org.xml.sax.helpers,javax.xml.parsers,com.sun.org.apache.xml.internal.resolver.helpers,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.regexp.internal'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal.jaxp'/>
    <p n='uses' v='com.sun.org.apache.xpath.internal.functions,com.sun.org.apache.xalan.internal.res,org.xml.sax,javax.xml.namespace,org.w3c.dom,com.sun.org.apache.xpath.internal.objects,javax.xml.xpath,javax.xml.transform,org.w3c.dom.traversal,com.sun.org.apache.xml.internal.utils,javax.xml.parsers,com.sun.org.apache.xpath.internal'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.resolver.readers'/>
    <p n='uses' v='org.xml.sax,com.sun.org.apache.xml.internal.resolver,org.xml.sax.helpers,javax.xml.parsers,com.sun.org.apache.xml.internal.resolver.helpers,org.w3c.dom'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.xs.traversers'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.impl.xs.util,com.sun.org.apache.xerces.internal.xni.grammars,org.xml.sax,com.sun.org.apache.xerces.internal.impl.dv.xs,org.w3c.dom,com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.impl.xs,com.sun.org.apache.xerces.internal.impl.xs.opti,com.sun.org.apache.xerces.internal.impl.validation,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.impl.xs.identity,com.sun.org.apache.xerces.internal.parsers,org.xml.sax.helpers,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.impl.xpath,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.validation'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.xni'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xml.internal.utils'/>
    <p n='uses' v='org.xml.sax,com.sun.org.apache.xml.internal.res,org.w3c.dom,javax.xml.transform,com.sun.org.apache.xml.internal.dtm.ref.dom2dtm,javax.xml.transform.sax,org.xml.sax.ext,javax.xml.parsers,org.xml.sax.helpers,com.sun.org.apache.xml.internal.dtm.ref'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.bcel.internal.generic'/>
    <p n='uses' v='com.sun.org.apache.bcel.internal,com.sun.org.apache.bcel.internal.util,com.sun.org.apache.bcel.internal.classfile'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.impl.msg'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.util'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xerces.internal.xpointer'/>
    <p n='uses' v='com.sun.org.apache.xerces.internal.impl.dv,com.sun.org.apache.xerces.internal.util,com.sun.org.apache.xerces.internal.xinclude,com.sun.org.apache.xerces.internal.impl,com.sun.org.apache.xerces.internal.xni,com.sun.org.apache.xerces.internal.xni.parser,com.sun.org.apache.xerces.internal.xs'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.compiler'/>
    <p n='uses' v='com.sun.java_cup.internal.runtime,org.xml.sax,com.sun.org.apache.xml.internal.dtm,com.sun.org.apache.bcel.internal.util,com.sun.org.apache.xalan.internal.xsltc.compiler.util,org.w3c.dom,com.sun.org.apache.bcel.internal.classfile,com.sun.org.apache.xml.internal.utils,com.sun.org.apache.bcel.internal.generic,javax.xml.parsers,org.xml.sax.helpers,com.sun.org.apache.xml.internal.serializer,com.sun.org.apache.xalan.internal.xsltc.runtime'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xpath.internal'/>
    <p n='uses' v='com.sun.org.apache.xml.internal.dtm.ref.sax2dtm,com.sun.org.apache.xpath.internal.functions,com.sun.org.apache.xalan.internal.res,com.sun.org.apache.xalan.internal.extensions,com.sun.org.apache.xpath.internal.operations,com.sun.org.apache.xpath.internal.compiler,javax.xml.transform,javax.xml.parsers,javax.xml.transform.stream,com.sun.org.apache.xpath.internal.axes,org.xml.sax,com.sun.org.apache.xml.internal.dtm,org.w3c.dom,com.sun.org.apache.xpath.internal.objects,org.w3c.dom.traversal,javax.xml.transform.sax,com.sun.org.apache.xpath.internal.patterns,com.sun.org.apache.xml.internal.utils,org.xml.sax.helpers,com.sun.org.apache.xml.internal.dtm.ref'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.runtime.output'/>
    <p n='uses' v='com.sun.org.apache.xalan.internal.xsltc.trax,org.xml.sax,org.xml.sax.ext,javax.xml.parsers,org.w3c.dom,com.sun.org.apache.xml.internal.serializer,javax.xml.stream'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xslt'/>
    <p n='uses' v='com.sun.org.apache.xalan.internal.res,org.xml.sax,com.sun.org.apache.xalan.internal,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,com.sun.org.apache.xml.internal.utils,javax.xml.parsers,org.xml.sax.helpers,javax.xml.transform.stream'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.org.apache.xalan.internal.xsltc.runtime'/>
    <p n='uses' v='org.xml.sax,com.sun.org.apache.xml.internal.dtm,org.w3c.dom,com.sun.org.apache.xalan.internal.xsltc.dom,com.sun.org.apache.xalan.internal.xsltc,javax.xml.transform,javax.xml.transform.dom,com.sun.org.apache.xml.internal.utils,javax.xml.parsers,com.sun.org.apache.xml.internal.dtm.ref,com.sun.org.apache.xalan.internal.xsltc.runtime.output,com.sun.org.apache.xml.internal.serializer'/>
    <p n='version' t='version' v='1.4.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.java_cup.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.java_cup.internal
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.java_cup.internal.runtime)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.java_cup.internal.runtime ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.bcel.internal)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.bcel.internal ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.bcel.internal.classfile)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.bcel.internal.classfile ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.bcel.internal.generic)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.bcel.internal.generic ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.bcel.internal.util)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.bcel.internal.util ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.bcel.internal.verifier)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.bcel.internal.verifier ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.bcel.internal.verifier.exc)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.bcel.internal.verifier.exc
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.bcel.internal.verifier.statics)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.bcel.internal.verifier.statics
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.bcel.internal.verifier.structurals)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.bcel.internal.verifier.structurals
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.html.internal.dom)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.html.internal.dom ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.regexp.internal)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.regexp.internal ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.client)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.client ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.extensions)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.extensions
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.lib)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.lib ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.res)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.res ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.templates)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.templates
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xslt)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xslt ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.cmdline)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.cmdline
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.cmdline.getopt)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.cmdline.getopt
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.compiler)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.compiler
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.compiler.util)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.compiler.util
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.dom)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.dom
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.runtime)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.runtime.output)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.runtime.output
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.trax)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.trax
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xalan.internal.xsltc.util)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xalan.internal.xsltc.util
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.dom)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.dom ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.dom.events)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.dom.events
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.dtd)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.dtd
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.dtd.models)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.dtd.models
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.dv)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.dv ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.dv.dtd)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.dv.dtd
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.dv.util)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.dv.util
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.dv.xs)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.dv.xs
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.io)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.io ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.msg)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.msg
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.validation)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.validation
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.xpath)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.xpath
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.xpath.regex)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.xpath.regex
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.xs)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.xs ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.xs.identity)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.xs.identity
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.xs.models)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.xs.models
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.xs.opti)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.xs.opti
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.xs.traversers)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.xs.traversers
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.impl.xs.util)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.impl.xs.util
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.jaxp)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.jaxp ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.jaxp.datatype)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.jaxp.datatype
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.jaxp.validation)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.jaxp.validation
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.parsers)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.parsers ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.util)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.util ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.xinclude)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.xinclude
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.xni)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.xni ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.xni.grammars)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.xni.grammars
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.xni.parser)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.xni.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.xpointer)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.xpointer
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.xs)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.xs ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xerces.internal.xs.datatypes)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xerces.internal.xs.datatypes
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.dtm)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.dtm ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.dtm.ref)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.dtm.ref ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.dtm.ref.dom2dtm)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.dtm.ref.dom2dtm
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.dtm.ref.sax2dtm)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.dtm.ref.sax2dtm
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.res)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.res ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.resolver)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.resolver ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.resolver.helpers)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.resolver.helpers
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.resolver.readers)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.resolver.readers
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.resolver.tools)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.resolver.tools
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.serialize)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.serialize ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.serializer)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.serializer ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.serializer.utils)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.serializer.utils
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.utils)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.utils ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xml.internal.utils.res)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xml.internal.utils.res ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.axes)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.axes ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.compiler)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.compiler ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.domapi)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.domapi ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.functions)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.functions
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.jaxp)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.jaxp ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.objects)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.objects ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.operations)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.operations
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.patterns)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.patterns ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.org.apache.xpath.internal.res)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.org.apache.xpath.internal.res ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.internal.stream)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.internal.stream ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.internal.stream.dtd)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.internal.stream.dtd ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.internal.stream.dtd.nonvalidating)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.internal.stream.dtd.nonvalidating
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.internal.stream.events)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.internal.stream.events ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.internal.stream.util)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.internal.stream.util ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.internal.stream.writers)(version&gt;=1.4.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.internal.stream.writers ;version=1.4.2
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.border)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.border
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.event
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.transform.stax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.events)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.events
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.html)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.html
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ranges)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ranges
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.w3c.dom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.xstream/1.3.0.1' presentationname='Apache ServiceMix Bundles: xstream-1.3' symbolicname='org.apache.servicemix.bundles.xstream' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.xstream/1.3_1/org.apache.servicemix.bundles.xstream-1.3_1.jar' version='1.3.0.1'>
  <description>
    This bundle simply wraps xstream-1.3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    422815
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: xstream-1.3'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.xstream'/>
    <p n='version' t='version' v='1.3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io'/>
    <p n='uses' v='com.thoughtworks.xstream,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.copy'/>
    <p n='uses' v='com.thoughtworks.xstream.io'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.javabean'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.alias,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.binary'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.extended'/>
    <p n='uses' v='com.thoughtworks.xstream.io,org.joda.time,com.thoughtworks.xstream.mapper,org.joda.time.format,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters,javax.xml.datatype,com.thoughtworks.xstream.converters.basic,com.thoughtworks.xstream.converters.collections,javax.swing.plaf,javax.security.auth,javax.swing'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.xml.xppdom'/>
    <p n='uses' v='org.xmlpull.mxp1,org.xmlpull.v1'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.mapper'/>
    <p n='uses' v='com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters,com.thoughtworks.xstream.core,com.thoughtworks.xstream.converters.enums,net.sf.cglib.proxy,com.thoughtworks.xstream.annotations,com.thoughtworks.xstream,com.thoughtworks.xstream.alias'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.core.util'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.reflection'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters,com.thoughtworks.xstream.core,sun.misc,com.thoughtworks.xstream.converters.basic,net.sf.cglib.proxy,sun.reflect,com.thoughtworks.xstream'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream,com.thoughtworks.xstream.core.util'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.persistence'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.core'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream,com.thoughtworks.xstream.alias,com.thoughtworks.xstream.io.path'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.enums'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.converters.basic,com.thoughtworks.xstream.converters.collections,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.xml'/>
    <p n='uses' v='com.thoughtworks.xstream.io,nu.xom,org.dom4j.io,org.xml.sax,com.thoughtworks.xstream.io.xml.xppdom,org.xmlpull.mxp1,javax.xml.namespace,com.thoughtworks.xstream.core.util,org.w3c.dom,org.jdom,com.thoughtworks.xstream.converters,org.dom4j.tree,javax.xml.transform.sax,org.dom4j,org.jdom.input,org.xmlpull.v1,com.thoughtworks.xstream,org.xml.sax.helpers,javax.xml.parsers,javax.xml.stream'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.basic'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.annotations'/>
    <p n='uses' v='com.thoughtworks.xstream,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.json'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,org.codehaus.jettison.mapped,com.thoughtworks.xstream.core.util,javax.xml.stream'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.converters.extended,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters.reflection,com.thoughtworks.xstream.converters,com.thoughtworks.xstream.core,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream.converters.basic,com.thoughtworks.xstream.converters.collections,com.thoughtworks.xstream.alias'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.converters.collections'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.mapper,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters,com.thoughtworks.xstream.core'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.alias'/>
    <p n='uses' v='com.thoughtworks.xstream,com.thoughtworks.xstream.mapper'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thoughtworks.xstream.io.path'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream.core.util,com.thoughtworks.xstream.converters'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.alias)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.alias ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.annotations)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.annotations ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.basic)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.basic ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.collections)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.collections
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.enums)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.enums ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.extended)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.extended
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.javabean)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.javabean
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.converters.reflection)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.converters.reflection
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.core)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.core ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.core.util)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.core.util ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.binary)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.binary ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.copy)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.copy ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.json)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.json ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.path)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.path ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.xml ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml.xppdom)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.io.xml.xppdom ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.mapper)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.mapper ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.persistence)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.thoughtworks.xstream.persistence ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.plaf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.plaf
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.cglib.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.cglib.proxy
  </require>
  <require extend='false' filter='(&amp;(package=nu.xom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package nu.xom
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jettison.mapped)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jettison.mapped
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j.io
  </require>
  <require extend='false' filter='(&amp;(package=org.dom4j.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.dom4j.tree
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.joda.time
  </require>
  <require extend='false' filter='(&amp;(package=org.joda.time.format)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.joda.time.format
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.mxp1)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xmlpull.mxp1
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlpull.v1)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xmlpull.v1
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
  <require extend='false' filter='(&amp;(package=sun.reflect)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.reflect
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jing/20030619.0.0.1' presentationname='Apache ServiceMix Bundles: jing-20030619' symbolicname='org.apache.servicemix.bundles.jing' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jing/20030619_1/org.apache.servicemix.bundles.jing-20030619_1.jar' version='20030619.0.0.1'>
  <description>
    This bundle simply wraps jing-20030619.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    483573
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: jing-20030619'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jing'/>
    <p n='version' t='version' v='20030619.0.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.relaxng.impl'/>
    <p n='uses' v='org.xml.sax,com.thaiopensource.relaxng.parse,com.thaiopensource.relaxng.parse.sax,com.thaiopensource.util,com.thaiopensource.validate.rng,org.relaxng.datatype,com.thaiopensource.validate,com.thaiopensource.xml.util,org.xml.sax.helpers,com.thaiopensource.xml.sax,com.thaiopensource.datatype,com.thaiopensource.validate.nrl,org.relaxng.datatype.helpers,com.thaiopensource.validate.auto'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.datatype.xsd.regex.xerces2'/>
    <p n='uses' v='org.apache.xerces.impl.xpath.regex,com.thaiopensource.datatype.xsd.regex'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.validate.schematron'/>
    <p n='uses' v='org.xml.sax,com.icl.saxon,com.thaiopensource.util,com.thaiopensource.validate.rng,javax.xml.transform,javax.xml.transform.sax,com.thaiopensource.validate,com.thaiopensource.xml.util,org.xml.sax.helpers,org.apache.xalan.processor,com.thaiopensource.xml.sax,javax.xml.transform.stream'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.relaxng.parse'/>
    <p n='uses' v='org.relaxng.datatype,org.xml.sax'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.relaxng.parse.sax'/>
    <p n='uses' v='org.relaxng.datatype,com.thaiopensource.relaxng.parse,org.xml.sax,com.thaiopensource.xml.util,org.xml.sax.helpers,com.thaiopensource.util,com.thaiopensource.xml.sax'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.relaxng.util'/>
    <p n='uses' v='org.apache.tools.ant.types,org.xml.sax,com.thaiopensource.validate.schematron,org.apache.tools.ant,com.thaiopensource.util,com.thaiopensource.validate.rng,org.relaxng.datatype,com.thaiopensource.validate,com.thaiopensource.xml.sax,org.relaxng.datatype.helpers,com.thaiopensource.validate.auto'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.validate.auto.resources'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.util'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.relaxng.parse.sax.resources'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.relaxng.util.resources'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.relaxng.parse.compact.resources'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.validate.xerces'/>
    <p n='uses' v='org.xml.sax,org.apache.xerces.parsers,org.apache.xerces.impl,org.apache.xerces.xni.parser,com.thaiopensource.util,org.apache.xerces.util,com.thaiopensource.validate,org.apache.xerces.xni.grammars,org.apache.xerces.impl.xs,org.apache.xerces.xni,org.apache.xerces.impl.validation'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.datatype'/>
    <p n='uses' v='org.relaxng.datatype'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.relaxng'/>
    <p n='uses' v='org.relaxng.datatype,org.xml.sax,com.thaiopensource.validate,com.thaiopensource.util,com.thaiopensource.xml.sax,com.thaiopensource.validate.rng,com.thaiopensource.validate.auto'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.validate.nrl'/>
    <p n='uses' v='org.xml.sax,com.thaiopensource.util,com.thaiopensource.validate.rng,com.thaiopensource.validate,org.xml.sax.helpers,com.thaiopensource.xml.util,com.thaiopensource.xml.sax,com.thaiopensource.validate.auto'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.datatype.xsd.regex.xerces'/>
    <p n='uses' v='org.apache.xerces.utils.regex,com.thaiopensource.datatype.xsd.regex'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.relaxng.parse.compact'/>
    <p n='uses' v='com.thaiopensource.relaxng.parse,org.xml.sax,org.xml.sax.helpers,com.thaiopensource.xml.util,com.thaiopensource.util'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.relaxng.jarv'/>
    <p n='uses' v='org.iso_relax.verifier,com.thaiopensource.relaxng.impl,com.thaiopensource.relaxng.parse,org.xml.sax,com.thaiopensource.relaxng.parse.sax,org.iso_relax.verifier.impl,org.relaxng.datatype,com.thaiopensource.validate,com.thaiopensource.xml.sax,org.relaxng.datatype.helpers'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.validate.mns'/>
    <p n='uses' v='org.xml.sax,com.thaiopensource.util,com.thaiopensource.validate.rng,com.thaiopensource.validate,com.thaiopensource.xml.util,org.xml.sax.helpers,com.thaiopensource.xml.sax,com.thaiopensource.validate.nrl,com.thaiopensource.validate.auto'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.validate.nrl.resources'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.relaxng.impl.resources'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.validate.rng'/>
    <p n='uses' v='org.relaxng.datatype,com.thaiopensource.relaxng.impl,org.xml.sax,com.thaiopensource.relaxng.parse,com.thaiopensource.relaxng.parse.sax,com.thaiopensource.relaxng.parse.compact,com.thaiopensource.validate,com.thaiopensource.util,com.thaiopensource.xml.sax,com.thaiopensource.validate.auto'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.datatype.xsd.regex'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.validate.schematron.resources'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.xml.sax.resources'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.datatype.xsd.regex.jdk1_4'/>
    <p n='uses' v='com.thaiopensource.util,com.thaiopensource.datatype.xsd.regex'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.validate'/>
    <p n='uses' v='org.xml.sax,com.thaiopensource.xml.sax,com.thaiopensource.util,com.thaiopensource.validate.auto'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.xml.util'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.datatype.xsd.resources'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.xml.sax'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.parsers,com.thaiopensource.util'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.datatype.xsd.regex.test'/>
    <p n='uses' v='org.xml.sax,javax.xml.parsers,org.xml.sax.helpers,com.thaiopensource.util,com.thaiopensource.datatype.xsd.regex'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.datatype.xsd'/>
    <p n='uses' v='org.relaxng.datatype,com.thaiopensource.xml.util,com.thaiopensource.util,com.thaiopensource.datatype,org.relaxng.datatype.helpers,com.thaiopensource.datatype.xsd.regex'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.validate.mns.resources'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.validate.jarv'/>
    <p n='uses' v='org.iso_relax.verifier,org.xml.sax,com.thaiopensource.validate,org.xml.sax.helpers,com.thaiopensource.util'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.validate.auto'/>
    <p n='uses' v='org.xml.sax,com.thaiopensource.validate,org.xml.sax.helpers,com.thaiopensource.util,com.thaiopensource.xml.sax'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.thaiopensource.datatype.xsd.regex.jdk1_4.resources'/>
    <p n='version' t='version' v='20030619.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.icl.saxon)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.icl.saxon
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.datatype)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.datatype ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.datatype.xsd)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.datatype.xsd ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.datatype.xsd.regex)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.datatype.xsd.regex ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.datatype.xsd.regex.jdk1_4)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.datatype.xsd.regex.jdk1_4
    
    
    
    
    
    
    
    
    
    
    
     ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.datatype.xsd.regex.jdk1_4.resources)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.datatype.xsd.regex.jdk1_4.resources
    
    
    
    
    
    
    
    
    
    
    
     ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.datatype.xsd.regex.test)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.datatype.xsd.regex.test ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.datatype.xsd.regex.xerces)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.datatype.xsd.regex.xerces
    
    
    
    
    
    
    
    
    
    
    
     ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.datatype.xsd.regex.xerces2)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.datatype.xsd.regex.xerces2
    
    
    
    
    
    
    
    
    
    
    
     ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.datatype.xsd.resources)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.datatype.xsd.resources ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.relaxng)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.relaxng ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.relaxng.impl)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.relaxng.impl ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.relaxng.impl.resources)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.relaxng.impl.resources ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.relaxng.jarv)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.relaxng.jarv ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.relaxng.parse)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.relaxng.parse ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.relaxng.parse.compact)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.relaxng.parse.compact ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.relaxng.parse.compact.resources)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.relaxng.parse.compact.resources
    
    
    
    
    
    
    
    
    
    
    
     ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.relaxng.parse.sax)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.relaxng.parse.sax ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.relaxng.parse.sax.resources)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.relaxng.parse.sax.resources
    
    
    
    
    
    
    
    
    
    
    
     ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.relaxng.util)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.relaxng.util ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.relaxng.util.resources)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.relaxng.util.resources ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.util)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.util ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.validate)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.validate ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.validate.auto)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.validate.auto ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.validate.auto.resources)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.validate.auto.resources ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.validate.jarv)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.validate.jarv ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.validate.mns)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.validate.mns ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.validate.mns.resources)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.validate.mns.resources ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.validate.nrl)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.validate.nrl ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.validate.nrl.resources)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.validate.nrl.resources ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.validate.rng)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.validate.rng ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.validate.schematron)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.validate.schematron ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.validate.schematron.resources)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.validate.schematron.resources
    
    
    
    
    
    
    
    
    
    
    
     ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.validate.xerces)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.validate.xerces ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.xml.sax)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.xml.sax ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.xml.sax.resources)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.xml.sax.resources ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=com.thaiopensource.xml.util)(version&gt;=20030619.0.0))' multiple='false' name='package' optional='false'>
    Import package com.thaiopensource.xml.util ;version=20030619.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xalan.processor)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xalan.processor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xerces.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xerces.impl.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.xpath.regex)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xerces.impl.xpath.regex
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.impl.xs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xerces.impl.xs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xerces.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xerces.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.utils.regex)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xerces.utils.regex
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xni)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xerces.xni
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xni.grammars)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xerces.xni.grammars
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xerces.xni.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xerces.xni.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.verifier)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.iso_relax.verifier
  </require>
  <require extend='false' filter='(&amp;(package=org.iso_relax.verifier.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.iso_relax.verifier.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.relaxng.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.relaxng.datatype
  </require>
  <require extend='false' filter='(&amp;(package=org.relaxng.datatype.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.relaxng.datatype.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.drools/4.0.7.1' presentationname='Apache ServiceMix Bundles: drools-4.0.7' symbolicname='org.apache.servicemix.bundles.drools' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.drools/4.0.7_1/org.apache.servicemix.bundles.drools-4.0.7_1.jar' version='4.0.7.1'>
  <description>
    This bundle simply wraps drools-4.0.7.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2542440
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: drools-4.0.7'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.drools'/>
    <p n='version' t='version' v='4.0.7.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.brms.client.modeldriven'/>
    <p n='uses' v='org.drools.brms.client.modeldriven.brl'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.asm'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.ruleflow.instance'/>
    <p n='uses' v='org.drools.ruleflow.common.instance,org.drools,org.drools.ruleflow.core,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.ruleflow.core.impl'/>
    <p n='uses' v='org.drools.ruleflow.common.datatype,org.drools.ruleflow.common.datatype.impl.type,org.mvel,org.drools.ruleflow.core,org.drools.ruleflow.common.core.impl'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel'/>
    <p n='uses' v='org.mvel.ast,org.mvel.optimizers,org.mvel.integration.impl,org.mvel.conversion,org.mvel.integration,org.mvel.debug,org.mvel.util,org.mvel.optimizers.impl.refl'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel.integration.impl'/>
    <p n='uses' v='org.mvel.util,org.mvel,org.mvel.integration'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel.ast.cache'/>
    <p n='uses' v='org.mvel.util,org.mvel,org.mvel.integration'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.analytics.rangeChecks'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.lang.descr'/>
    <p n='uses' v='org.drools.compiler'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.objenesis.instantiator.basic'/>
    <p n='uses' v='org.drools.objenesis,org.drools.objenesis.instantiator'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.asm.util.attrs'/>
    <p n='uses' v='org.drools.asm,org.drools.asm.attrs'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.commons.jci.compilers'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.codehaus.janino.util.enumerator,org.eclipse.jdt.internal.compiler.classfmt,org.eclipse.jdt.internal.compiler,org.codehaus.janino.util,org.codehaus.janino,org.drools.commons.jci.readers,org.eclipse.jdt.internal.compiler.problem,org.drools.util,org.eclipse.jdt.core.compiler,org.drools.commons.jci.stores,org.drools.commons.jci.problems,org.codehaus.janino.util.resource'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.objenesis.instantiator.jrockit'/>
    <p n='uses' v='org.drools.objenesis,jrockit.vm,COM.jrockit.reflect,org.drools.objenesis.instantiator'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.reteoo.builder'/>
    <p n='uses' v='org.drools.base,org.drools,org.drools.rule,org.drools.util,org.drools.reteoo,org.drools.spi,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.commons.jci.stores'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.commons.jci.problems'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.audit'/>
    <p n='uses' v='org.drools.ruleflow.instance,org.drools.audit.event,org.drools.ruleflow.common.core,org.drools.event,org.drools,com.thoughtworks.xstream,org.drools.rule,org.drools.spi,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.base.extractors'/>
    <p n='uses' v='org.drools.base,org.drools,org.mvel,org.drools.spi,org.drools.util,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.ruleflow.common.instance.impl'/>
    <p n='uses' v='org.drools.ruleflow.common.instance,org.drools.ruleflow.common.core'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel.optimizers'/>
    <p n='uses' v='org.mvel.util,org.mvel,org.mvel.optimizers.impl.refl,org.mvel.optimizers.impl.asm,org.mvel.integration'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.ruleflow.common.datatype.impl.type'/>
    <p n='uses' v='org.drools.ruleflow.common.datatype'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.decisiontable.parser.csv'/>
    <p n='uses' v='org.drools.decisiontable.parser'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.util..svn.text-base'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.scm.jcr'/>
    <p n='uses' v='org.drools.scm.log,org.drools.repository,org.tmatesoft.svn.core,org.drools.scm'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.decisiontable.model'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel.optimizers.impl.asm'/>
    <p n='uses' v='org.mvel.asm,org.mvel.util,org.mvel.ast,org.mvel.optimizers,org.mvel,org.mvel.optimizers.impl.refl,org.mvel.integration'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.ruleflow.instance.impl'/>
    <p n='uses' v='org.drools.ruleflow.common.instance.impl,org.drools.ruleflow.common.instance,org.drools.ruleflow.instance,org.mvel,org.drools.ruleflow.core.impl,org.mvel.integration,org.drools.ruleflow.common.core,org.drools.event,org.drools.base,org.drools,org.drools.rule,org.drools.spi,org.drools.base.mvel,org.drools.ruleflow.core,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.scm'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.base.accumulators'/>
    <p n='uses' v='org.drools,org.drools.rule,org.drools.base.mvel,org.mvel,org.drools.spi,org.mvel.integration,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.analytics.accumulateFunction'/>
    <p n='uses' v='org.drools.analytics.components,org.drools.base.accumulators'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.util.asm..svn.prop-base'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.xml'/>
    <p n='uses' v='org.xml.sax,org.drools.lang.descr,org.drools.util,javax.xml.parsers,org.xml.sax.helpers,org.drools.lang,org.antlr.runtime'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.facttemplates'/>
    <p n='uses' v='org.drools.base,org.drools,org.drools.rule,org.drools.util,org.drools.spi,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.base.field'/>
    <p n='uses' v='org.drools,org.drools.spi'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel.util'/>
    <p n='uses' v='org.mvel.ast,org.mvel,org.mvel.integration.impl,org.mvel.math,org.mvel.integration,org.mvel.debug'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.concurrent'/>
    <p n='uses' v='org.drools.util.concurrent.locks,org.drools,org.drools.spi'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.scm.svn'/>
    <p n='uses' v='org.tmatesoft.svn.core.io.diff,org.tmatesoft.svn.core.internal.io.fs,org.tmatesoft.svn.core,org.drools.scm,org.tmatesoft.svn.core.io,org.drools.scm.log,org.tmatesoft.svn.core.internal.io.dav,org.tmatesoft.svn.core.wc,org.tmatesoft.svn.core.internal.io.svn,org.tmatesoft.svn.core.auth'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.ruleflow.core'/>
    <p n='uses' v='org.drools.ruleflow.common.datatype,org.drools.ruleflow.common.core'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.util'/>
    <p n='uses' v='org.drools.objenesis,org.drools.base,org.drools,org.drools.rule,org.drools.reteoo,org.drools.spi,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.agent'/>
    <p n='uses' v='org.drools,org.drools.rule,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.brms.client.modeldriven.brl'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel.asm'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.base.evaluators'/>
    <p n='uses' v='org.mvel,org.drools.base,org.drools,org.drools.rule,org.drools.util,org.drools.spi,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel.math'/>
    <p n='uses' v='org.mvel.util,org.mvel'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.repository'/>
    <p n='uses' v='javax.jcr.lock,javax.jcr.nodetype,javax.jcr,org.apache.log4j,org.apache.jackrabbit.core.nodetype,org.apache.jackrabbit.core.security,org.apache.jackrabbit.name,javax.jcr.query,org.apache.jackrabbit.core,org.apache.jackrabbit.core.nodetype.compact,javax.jcr.version'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.objenesis.instantiator.gcj'/>
    <p n='uses' v='org.drools.objenesis,org.drools.objenesis.instantiator'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.ruleflow.common.datatype.impl'/>
    <p n='uses' v='org.drools.ruleflow.common.datatype'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.objenesis.strategy'/>
    <p n='uses' v='org.drools.objenesis,org.drools.objenesis.instantiator.basic,org.drools.objenesis.instantiator.jrockit,org.drools.objenesis.instantiator.sun,org.drools.objenesis.instantiator.gcj,org.drools.objenesis.instantiator'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.lang.dsl'/>
    <p n='uses' v='org.drools.compiler,org.drools,org.drools.lang'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel.optimizers.impl.refl'/>
    <p n='uses' v='org.mvel.optimizers.impl.refl.collection,org.mvel.util,org.mvel.optimizers,org.mvel,org.mvel.integration'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.objenesis.instantiator'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.rule.builder.dialect.java.parser'/>
    <p n='uses' v='org.antlr.runtime'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.base.dataproviders'/>
    <p n='uses' v='org.drools,org.drools.rule,org.drools.base.mvel,org.drools.util,org.drools.spi,org.mvel,org.mvel.integration'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.analytics'/>
    <p n='uses' v='org.drools.compiler,org.drools.analytics.result,org.drools.lang.descr,org.drools.analytics.components,org.drools,org.drools.rule,org.drools.analytics.dao'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.commons.jci.readers'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.rule.builder.dialect.mvel'/>
    <p n='uses' v='org.drools.rule.builder,org.mvel.optimizers,org.mvel,org.drools.base.dataproviders,org.drools.rule.builder.dialect.java,org.drools.base.accumulators,org.drools.compiler,org.drools.commons.jci.readers,org.drools.lang.descr,org.drools.base,org.mvel.util,org.drools.rule,org.drools.util,org.drools.spi,org.drools.base.mvel,org.antlr.runtime'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.base.mvel'/>
    <p n='uses' v='org.drools.base.evaluators,org.mvel,org.mvel.integration.impl,org.mvel.integration,org.mvel.debug,org.drools.base,org.drools,org.drools.rule,org.drools.reteoo,org.drools.spi,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.reteoo'/>
    <p n='uses' v='org.drools.objenesis,org.drools.base.evaluators,org.drools.event,org.drools.facttemplates,org.drools.base,org.drools.concurrent,org.drools,org.drools.rule,org.drools.spi,org.drools.util,org.drools.reteoo.builder,org.drools.objenesis.instantiator,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.objenesis.instantiator.sun'/>
    <p n='uses' v='org.drools.objenesis,sun.reflect,org.drools.objenesis.instantiator'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.resource'/>
    <p n='uses' v='org.drools.resource.exception,org.tmatesoft.svn.core,org.drools.resource.util'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.asm.commons'/>
    <p n='uses' v='org.drools.asm'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.util..svn.tmp'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.ruleflow.common.instance'/>
    <p n='uses' v='org.drools.ruleflow.common.core'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel.ast'/>
    <p n='uses' v='org.mvel.optimizers,org.mvel,org.mvel.integration.impl,org.mvel.ast.cache,org.mvel.integration,org.mvel.debug,org.mvel.util'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.analytics.reports'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.brms.server.util'/>
    <p n='uses' v='org.drools.brms.client.modeldriven,com.thoughtworks.xstream.io,org.drools.brms.client.modeldriven.brl,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream,org.mvel,org.drools.util'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.repository.events'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.util.concurrent.locks..svn.text-base'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.ruleflow.common.core.impl'/>
    <p n='uses' v='org.drools.ruleflow.common.core'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.asm.signature'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.rule'/>
    <p n='uses' v='org.drools.base.evaluators,org.drools.ruleflow.common.core,org.drools.base.accumulators,org.drools.base,org.drools.facttemplates,org.drools,org.drools.reteoo,org.drools.spi,org.drools.util,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.asm.attrs'/>
    <p n='uses' v='org.drools.asm'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.conflict'/>
    <p n='uses' v='org.drools.rule,org.drools.reteoo,org.drools.spi,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.jsr94.rules'/>
    <p n='uses' v='javax.rules,org.drools,javax.rules.admin,org.drools.spi,org.drools.jsr94.rules.admin,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.util..svn.prop-base'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.contrib'/>
    <p n='uses' v='org.drools.decisiontable,org.drools.brms.client.modeldriven.brl,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.drools.brms.server.util,org.drools.analytics,org.drools.compiler,org.drools.lang.descr,org.drools,org.drools.rule,org.drools.lang.dsl,org.drools.lang'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.objenesis'/>
    <p n='uses' v='org.drools.objenesis.strategy,org.drools.objenesis.instantiator'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.util.asm'/>
    <p n='uses' v='org.drools.asm,org.drools.asm.util'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.analytics.redundancy'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel.conversion'/>
    <p n='uses' v='org.mvel.util,org.mvel'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.semantics.java.parser'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.asm.util'/>
    <p n='uses' v='org.drools.asm.signature,org.drools.asm,org.drools.asm.util.attrs'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.rule.builder.dialect.java'/>
    <p n='uses' v='org.drools.rule.builder,org.mvel,org.drools.rule.builder.dialect.java.parser,org.drools.base.accumulators,org.drools.compiler,org.drools.commons.jci.readers,org.drools.lang.descr,org.drools.base,org.drools.rule.builder.dialect.mvel,org.drools,org.drools.rule,org.drools.util,org.drools.spi,org.drools.commons.jci.compilers,org.drools.commons.jci.stores,org.antlr.runtime,org.drools.commons.jci.problems'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.analytics.dao'/>
    <p n='uses' v='org.drools.analytics.result,org.drools.analytics.components'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.event'/>
    <p n='uses' v='org.drools.ruleflow.instance,org.drools,org.drools.rule,org.drools.ruleflow.core,org.drools.spi,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel.optimizers.impl.refl.collection'/>
    <p n='uses' v='org.mvel.util,org.mvel,org.mvel.integration'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.common'/>
    <p n='uses' v='org.drools.objenesis,org.drools.base.evaluators,org.drools.ruleflow.common.instance,org.drools.ruleflow.instance,org.drools.ruleflow.instance.impl,org.drools.ruleflow.common.core,org.drools.event,org.drools.base,org.drools.util.concurrent.locks,org.drools,org.drools.concurrent,org.drools.rule,org.drools.reteoo,org.drools.ruleflow.core,org.drools.util,org.drools.spi'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.rule.builder'/>
    <p n='uses' v='org.drools.base.extractors,org.drools.base.evaluators,org.mvel,org.drools.compiler,org.drools.lang.descr,org.drools.base,org.drools.facttemplates,org.drools.rule.builder.dialect.mvel,org.drools,org.drools.rule,org.drools.spi,org.drools.lang'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.decisiontable'/>
    <p n='uses' v='org.drools.decisiontable.parser.xls,org.drools.rule,org.drools.decisiontable.parser.csv,org.drools.decisiontable.model,org.drools.decisiontable.parser'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.ruleflow.common.datatype'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.analytics.components'/>
    <p n='uses' v='org.drools.analytics.result'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.audit.event'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.decisiontable.parser'/>
    <p n='uses' v='org.drools.decisiontable.parser.xls,org.mvel,org.drools.decisiontable.model,org.drools.compiler,org.drools,org.drools.rule,org.drools.util'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.scm.log'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.util.concurrent.locks'/>
    <p n='uses' v='sun.misc,org.drools.util'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.base'/>
    <p n='uses' v='org.drools.asm,org.drools.base.evaluators,org.mvel.ast,org.mvel,org.drools,org.drools.rule,org.drools.spi,org.drools.base.extractors,org.drools.util.asm,org.mvel.integration,org.drools.event,org.drools.facttemplates,org.drools.base.field,org.drools.concurrent,org.drools.util,org.drools.base.mvel,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools'/>
    <p n='uses' v='org.drools.ruleflow.common.instance,org.drools.event,org.drools.base,org.drools.concurrent,org.drools.rule,org.drools.spi,org.drools.util,org.drools.reteoo,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.spi'/>
    <p n='uses' v='org.drools.base.evaluators,org.drools.event,org.drools.base,org.drools.facttemplates,org.drools,org.drools.concurrent,org.drools.rule,org.drools.util,org.drools.reteoo,org.drools.common'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.util.asm..svn.text-base'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.lang'/>
    <p n='uses' v='org.drools.compiler,org.drools.lang.descr,org.drools.base.evaluators,org.drools,org.drools.util,org.drools.lang.dsl,org.antlr.runtime'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.decisiontable.parser.xls'/>
    <p n='uses' v='jxl.read.biff,org.drools.decisiontable.parser,jxl'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.jsr94.rules.admin'/>
    <p n='uses' v='org.drools.decisiontable,javax.rules,org.xml.sax,javax.rules.admin,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.drools.compiler,org.drools.lang.descr,javax.xml.transform.sax,org.drools.xml,org.drools,org.drools.rule,org.drools.spi,org.drools.reteoo,org.drools.util,org.drools.jsr94.rules'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel.integration'/>
    <p n='uses' v='org.mvel'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.brms.server.rules'/>
    <p n='uses' v='org.drools.brms.client.modeldriven,org.drools.util.asm,org.drools.brms.server.util,org.drools.compiler,org.drools.lang.descr,org.drools.base,org.drools.rule,org.drools.lang.dsl'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel.debug'/>
    <p n='uses' v='org.mvel.util,org.mvel.ast,org.mvel,org.mvel.integration'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.ruleflow.common.core'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.resource.util'/>
    <p n='uses' v='org.tmatesoft.svn.core.internal.io.fs,org.tmatesoft.svn.core,org.tmatesoft.svn.core.io,org.apache.log4j,org.tmatesoft.svn.core.wc,org.tmatesoft.svn.core.internal.io.dav,org.tmatesoft.svn.core.internal.io.svn,org.drools.resource,org.tmatesoft.svn.core.auth'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.analytics.result'/>
    <p n='uses' v='org.drools.analytics.components,com.thoughtworks.xstream,org.mvel,org.drools.analytics.dao'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.compiler'/>
    <p n='uses' v='org.drools.rule.builder,org.xml.sax,org.drools.ruleflow.core.impl,org.drools.ruleflow.common.core,org.drools.base.accumulators,org.drools.xml,org.drools.lang.descr,org.drools.facttemplates,org.drools.base,org.drools,com.thoughtworks.xstream,org.drools.rule,org.drools.ruleflow.core,org.drools.util,org.drools.lang.dsl,org.drools.lang,org.antlr.runtime,org.drools.agent,org.drools.commons.jci.problems'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.drools.resource.exception'/>
    <p n='version' t='version' v='4.0.7'/>
  </capability>
  <require extend='false' filter='(&amp;(package=COM.jrockit.reflect)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package COM.jrockit.reflect
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.jcr.lock
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.jcr.nodetype
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.jcr.query
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.jcr.version
  </require>
  <require extend='false' filter='(&amp;(package=javax.rules)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.rules
  </require>
  <require extend='false' filter='(&amp;(package=javax.rules.admin)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.rules.admin
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=jrockit.vm)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package jrockit.vm
  </require>
  <require extend='false' filter='(&amp;(package=jxl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package jxl
  </require>
  <require extend='false' filter='(&amp;(package=jxl.read.biff)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package jxl.read.biff
  </require>
  <require extend='false' filter='(&amp;(package=org.antlr.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.antlr.runtime
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.jackrabbit.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.core.nodetype)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.jackrabbit.core.nodetype
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.core.nodetype.compact)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.jackrabbit.core.nodetype.compact
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.core.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.jackrabbit.core.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.name)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.jackrabbit.name
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.janino)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.janino
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.janino.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.janino.util
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.janino.util.enumerator)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.janino.util.enumerator
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.janino.util.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.janino.util.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.drools)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.agent)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.agent ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.analytics)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.analytics ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.analytics.accumulateFunction)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.analytics.accumulateFunction ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.analytics.components)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.analytics.components ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.analytics.dao)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.analytics.dao ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.analytics.rangeChecks)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.analytics.rangeChecks ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.analytics.redundancy)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.analytics.redundancy ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.analytics.reports)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.analytics.reports ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.analytics.result)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.analytics.result ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.asm)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.asm ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.asm.attrs)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.asm.attrs ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.asm.commons)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.asm.commons ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.asm.signature)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.asm.signature ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.asm.util)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.asm.util ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.asm.util.attrs)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.asm.util.attrs ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.audit)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.audit ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.audit.event)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.audit.event ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.base)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.base ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.base.accumulators)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.base.accumulators ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.base.dataproviders)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.base.dataproviders ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.base.evaluators)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.base.evaluators ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.base.extractors)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.base.extractors ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.base.field)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.base.field ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.base.mvel)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.base.mvel ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.brms.client.modeldriven)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.brms.client.modeldriven ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.brms.client.modeldriven.brl)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.brms.client.modeldriven.brl ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.brms.server.rules)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.brms.server.rules ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.brms.server.util)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.brms.server.util ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.common)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.common ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.commons.jci.compilers)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.commons.jci.compilers ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.commons.jci.problems)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.commons.jci.problems ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.commons.jci.readers)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.commons.jci.readers ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.commons.jci.stores)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.commons.jci.stores ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.compiler)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.compiler ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.concurrent)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.concurrent ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.conflict)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.conflict ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.contrib)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.contrib ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.decisiontable)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.decisiontable ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.decisiontable.model)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.decisiontable.model ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.decisiontable.parser)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.decisiontable.parser ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.decisiontable.parser.csv)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.decisiontable.parser.csv ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.decisiontable.parser.xls)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.decisiontable.parser.xls ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.event)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.event ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.facttemplates)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.facttemplates ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.jsr94.rules)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.jsr94.rules ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.jsr94.rules.admin)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.jsr94.rules.admin ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.lang)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.lang ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.lang.descr)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.lang.descr ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.lang.dsl)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.lang.dsl ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.objenesis)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.objenesis ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.objenesis.instantiator)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.objenesis.instantiator ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.objenesis.instantiator.basic)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.objenesis.instantiator.basic ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.objenesis.instantiator.gcj)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.objenesis.instantiator.gcj ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.objenesis.instantiator.jrockit)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.objenesis.instantiator.jrockit ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.objenesis.instantiator.sun)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.objenesis.instantiator.sun ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.objenesis.strategy)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.objenesis.strategy ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.repository)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.repository ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.repository.events)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.repository.events ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.resource)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.resource ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.resource.exception)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.resource.exception ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.resource.util)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.resource.util ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.reteoo)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.reteoo ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.reteoo.builder)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.reteoo.builder ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.rule)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.rule ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.rule.builder)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.rule.builder ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.rule.builder.dialect.java)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.rule.builder.dialect.java ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.rule.builder.dialect.java.parser)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.rule.builder.dialect.java.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.rule.builder.dialect.mvel)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.rule.builder.dialect.mvel ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.ruleflow.common.core)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.ruleflow.common.core ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.ruleflow.common.core.impl)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.ruleflow.common.core.impl ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.ruleflow.common.datatype)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.ruleflow.common.datatype ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.ruleflow.common.datatype.impl)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.ruleflow.common.datatype.impl ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.ruleflow.common.datatype.impl.type)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.ruleflow.common.datatype.impl.type
    
    
    
    
    
    
    
    
    
    
    
     ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.ruleflow.common.instance)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.ruleflow.common.instance ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.ruleflow.common.instance.impl)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.ruleflow.common.instance.impl ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.ruleflow.core)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.ruleflow.core ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.ruleflow.core.impl)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.ruleflow.core.impl ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.ruleflow.instance)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.ruleflow.instance ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.ruleflow.instance.impl)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.ruleflow.instance.impl ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.scm)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.scm ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.scm.jcr)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.scm.jcr ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.scm.log)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.scm.log ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.scm.svn)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.scm.svn ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.semantics.java.parser)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.semantics.java.parser ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.spi)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.spi ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.util)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.util ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.util..svn.prop-base)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.util..svn.prop-base ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.util..svn.text-base)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.util..svn.text-base ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.util..svn.tmp)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.util..svn.tmp ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.util.asm)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.util.asm ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.util.asm..svn.prop-base)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.util.asm..svn.prop-base ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.util.asm..svn.text-base)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.util.asm..svn.text-base ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.util.concurrent.locks)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.util.concurrent.locks ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.util.concurrent.locks..svn.text-base)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.util.concurrent.locks..svn.text-base
    
    
    
    
    
    
    
    
    
    
    
     ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.xml)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.drools.xml ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.core.compiler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.jdt.core.compiler
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.jdt.internal.compiler
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.classfmt)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.jdt.internal.compiler.classfmt
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.env)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.jdt.internal.compiler.env
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.problem)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.jdt.internal.compiler.problem
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.mvel ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel.asm)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.mvel.asm ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel.ast)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.mvel.ast ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel.ast.cache)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.mvel.ast.cache ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel.conversion)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.mvel.conversion ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel.debug)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.mvel.debug ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel.integration)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.mvel.integration ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel.integration.impl)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.mvel.integration.impl ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel.math)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.mvel.math ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel.optimizers)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.mvel.optimizers ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel.optimizers.impl.asm)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.mvel.optimizers.impl.asm ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel.optimizers.impl.refl)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.mvel.optimizers.impl.refl ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel.optimizers.impl.refl.collection)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.mvel.optimizers.impl.refl.collection ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel.util)(version&gt;=4.0.7))' multiple='false' name='package' optional='false'>
    Import package org.mvel.util ;version=4.0.7
  </require>
  <require extend='false' filter='(&amp;(package=org.tmatesoft.svn.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.tmatesoft.svn.core
  </require>
  <require extend='false' filter='(&amp;(package=org.tmatesoft.svn.core.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.tmatesoft.svn.core.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.tmatesoft.svn.core.internal.io.dav)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.tmatesoft.svn.core.internal.io.dav
  </require>
  <require extend='false' filter='(&amp;(package=org.tmatesoft.svn.core.internal.io.fs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.tmatesoft.svn.core.internal.io.fs
  </require>
  <require extend='false' filter='(&amp;(package=org.tmatesoft.svn.core.internal.io.svn)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.tmatesoft.svn.core.internal.io.svn
  </require>
  <require extend='false' filter='(&amp;(package=org.tmatesoft.svn.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.tmatesoft.svn.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.tmatesoft.svn.core.io.diff)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.tmatesoft.svn.core.io.diff
  </require>
  <require extend='false' filter='(&amp;(package=org.tmatesoft.svn.core.wc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.tmatesoft.svn.core.wc
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
  <require extend='false' filter='(&amp;(package=sun.reflect)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.reflect
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jasper-6.0.14/4.0.0.m1' presentationname='Apache ServiceMix OSGI Common Bundles: jasper' symbolicname='org.apache.servicemix.bundles.jasper-6.0.14' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jasper-6.0.14/4.0-m1/org.apache.servicemix.bundles.jasper-6.0.14-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    This bundle simply wraps jasper-6.0.14.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    521064
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: jasper'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jasper-6.0.14'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.el'/>
    <p n='uses' v='javax.servlet.jsp.el,javax.el'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.tagplugins.jstl'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.servlet.jsp'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.resources'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.util'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.tagplugins.jstl.core'/>
    <p n='uses' v='org.apache.jasper.tagplugins.jstl,org.apache.jasper.compiler.tagplugin'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.tools.ant,javax.servlet.jsp.tagext,javax.servlet,org.apache.tools.ant.util,org.apache.jasper.xmlparser,org.apache.jasper.compiler,org.apache.jasper.servlet'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache'/>
    <p n='uses' v='javax.naming'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.runtime'/>
    <p n='uses' v='org.apache.juli.logging,javax.servlet.http,org.apache.jasper.el,javax.servlet.jsp.tagext,org.apache.jasper.util,javax.servlet.jsp.el,org.apache.el,javax.servlet.jsp,org.apache.jasper,javax.naming,javax.servlet,org.apache,org.apache.jasper.security,javax.el,org.apache.jasper.compiler'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.compiler.tagplugin'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.security'/>
    <p n='uses' v='org.apache.jasper,org.apache.juli.logging'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.xmlparser'/>
    <p n='uses' v='org.apache.jasper,org.apache.juli.logging,org.xml.sax,javax.xml.parsers,org.w3c.dom,org.apache.jasper.compiler'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.compiler'/>
    <p n='uses' v='org.eclipse.jdt.internal.compiler.env,org.apache.tools.ant.types,org.apache.tools.ant.taskdefs,javax.servlet.jsp.tagext,org.eclipse.jdt.internal.compiler,org.apache.el.lang,javax.servlet,org.apache.jasper.runtime,org.eclipse.jdt.internal.compiler.problem,javax.xml.parsers,org.apache.jasper.compiler.tagplugin,org.apache.jasper.xmlparser,org.apache.jasper.el,org.apache.juli.logging,org.xml.sax,org.apache.tools.ant,org.eclipse.jdt.internal.compiler.classfmt,javax.servlet.jsp.el,org.apache.el,javax.servlet.jsp,org.apache.jasper,org.xml.sax.ext,org.xml.sax.helpers,org.eclipse.jdt.core.compiler,org.apache.jasper.security,javax.el,org.apache.jasper.servlet'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.servlet'/>
    <p n='uses' v='org.apache.juli.logging,javax.servlet.http,javax.servlet.jsp.tagext,org.apache.jasper,javax.servlet,org.apache,org.apache.jasper.runtime,org.apache.jasper.compiler'/>
    <p n='version' t='version' v='6.0.14'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.el)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.el
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.jsp
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.el)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.jsp.el
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.resources)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.jsp.resources
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.tagext)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.jsp.tagext
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.el)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.el
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.el.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.el.lang
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.compiler)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.compiler ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.compiler.tagplugin)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.compiler.tagplugin ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.el)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.el ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.resources)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.resources ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.runtime)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.runtime ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.security)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.security ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.servlet)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.servlet ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.tagplugins.jstl)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.tagplugins.jstl ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.tagplugins.jstl.core)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.tagplugins.jstl.core ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.util)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.util ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.xmlparser)(version&gt;=6.0.14))' multiple='false' name='package' optional='true'>
    Import package org.apache.jasper.xmlparser ;version=6.0.14
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.juli.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.juli.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.util
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.core.compiler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.jdt.core.compiler
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.jdt.internal.compiler
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.classfmt)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.jdt.internal.compiler.classfmt
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.env)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.jdt.internal.compiler.env
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.problem)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.eclipse.jdt.internal.compiler.problem
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.mina-1.1.6/1.0.0.m3' presentationname='Apache ServiceMix OSGI Common Bundles: mina-1.1.6' symbolicname='org.apache.servicemix.bundles.mina-1.1.6' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.mina-1.1.6/1.0-m3/org.apache.servicemix.bundles.mina-1.1.6-1.0-m3.jar' version='1.0.0.m3'>
  <description>
    This bundle simply wraps mina-1.1.6.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    365435
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: mina-1.1.6'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.mina-1.1.6'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.vmpipe'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.transport.vmpipe.support'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.vmpipe.support'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.apache.mina.common.support,org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.demux'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.support'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.spring'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.springframework.beans.factory.config,org.apache.mina.common,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.support'/>
    <p n='uses' v='com.jcraft.jzlib,org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.filter,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.filter.codec.support,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler'/>
    <p n='uses' v='org.apache.mina.handler.support,org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.jmx'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.management,org.apache.mina.filter'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.executor'/>
    <p n='uses' v='org.apache.mina.common,org.slf4j'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.common'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.filter.executor,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.socket.nio.support'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.transport.socket.nio'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.socket.nio'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.transport.socket.nio.support,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.chain'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.multiton'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.netty'/>
    <p n='uses' v='org.apache.mina.common,net.gleamynode.netty2,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.common.support'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util,org.slf4j'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.management'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.textline'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.support'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.util'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.transport.socket.nio,org.slf4j'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter'/>
    <p n='uses' v='org.apache.mina.filter.executor,org.apache.mina.common,org.apache.mina.common.support,org.apache.mina.util,org.apache.mina.filter.support,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.serialization'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.spring.ssl'/>
    <p n='uses' v='org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.util,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.demux'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.jcraft.jzlib)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.jcraft.jzlib
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=net.gleamynode.netty2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.gleamynode.netty2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.demux)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.demux ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.netty)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.netty ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.serialization)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.serialization ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.textline)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.textline ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.executor)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.executor ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.chain)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.chain ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.demux)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.demux ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.multiton)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.multiton ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.jmx)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.jmx ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.spring)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.spring ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.spring.ssl)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.spring.ssl ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.management)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.management ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.socket.nio ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.socket.nio.support
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.vmpipe ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.vmpipe.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.util)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.util ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.mina-1.1.6/1.0.0.rc1' presentationname='Apache ServiceMix OSGI Common Bundles: mina-1.1.6' symbolicname='org.apache.servicemix.bundles.mina-1.1.6' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.mina-1.1.6/1.0.0-rc1/org.apache.servicemix.bundles.mina-1.1.6-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    This bundle simply wraps mina-1.1.6.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    365408
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: mina-1.1.6'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.mina-1.1.6'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.vmpipe'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.transport.vmpipe.support'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.vmpipe.support'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.apache.mina.common.support,org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.demux'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.support'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.spring'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.springframework.beans.factory.config,org.apache.mina.common,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.support'/>
    <p n='uses' v='com.jcraft.jzlib,org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.filter,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.filter.codec.support,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler'/>
    <p n='uses' v='org.apache.mina.handler.support,org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.jmx'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.management,org.apache.mina.filter'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.executor'/>
    <p n='uses' v='org.apache.mina.common,org.slf4j'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.common'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.filter.executor,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.socket.nio.support'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.transport.socket.nio'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.socket.nio'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.transport.socket.nio.support,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.chain'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.multiton'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.netty'/>
    <p n='uses' v='org.apache.mina.common,net.gleamynode.netty2,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.common.support'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util,org.slf4j'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.management'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.textline'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.support'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.util'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.transport.socket.nio,org.slf4j'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter'/>
    <p n='uses' v='org.apache.mina.filter.executor,org.apache.mina.common,org.apache.mina.common.support,org.apache.mina.util,org.apache.mina.filter.support,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.serialization'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.spring.ssl'/>
    <p n='uses' v='org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.util,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.demux'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.jcraft.jzlib)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.jcraft.jzlib
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=net.gleamynode.netty2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.gleamynode.netty2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.demux)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.demux ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.netty)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.netty ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.serialization)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.serialization ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.textline)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.textline ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.executor)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.executor ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.chain)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.chain ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.demux)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.demux ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.multiton)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.multiton ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.jmx)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.jmx ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.spring)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.spring ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.spring.ssl)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.spring.ssl ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.management)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.management ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.socket.nio ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.socket.nio.support
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.vmpipe ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.vmpipe.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.util)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.util ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.mina-1.1.6/1.0.0.m2' presentationname='ServiceMix OSGI Common Bundles: mina-1.1.6' symbolicname='org.apache.servicemix.bundles.mina-1.1.6' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.mina-1.1.6/1.0-m2/org.apache.servicemix.bundles.mina-1.1.6-1.0-m2.jar' version='1.0.0.m2'>
  <description>
    This bundle simply wraps mina-1.1.6.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    365078
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix OSGI Common Bundles: mina-1.1.6'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.mina-1.1.6'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.vmpipe'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.transport.vmpipe.support'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.vmpipe.support'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.apache.mina.common.support,org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.demux'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.support'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.spring'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.springframework.beans.factory.config,org.apache.mina.common,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.support'/>
    <p n='uses' v='com.jcraft.jzlib,org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.filter,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.filter.codec.support,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler'/>
    <p n='uses' v='org.apache.mina.handler.support,org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.jmx'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.management,org.apache.mina.filter'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.executor'/>
    <p n='uses' v='org.apache.mina.common,org.slf4j'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.common'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.filter.executor,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.socket.nio.support'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.transport.socket.nio'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.socket.nio'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.transport.socket.nio.support,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.chain'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.multiton'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.netty'/>
    <p n='uses' v='org.apache.mina.common,net.gleamynode.netty2,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.common.support'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util,org.slf4j'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.management'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.textline'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.support'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.util'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.transport.socket.nio,org.slf4j'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter'/>
    <p n='uses' v='org.apache.mina.filter.executor,org.apache.mina.common,org.apache.mina.common.support,org.apache.mina.util,org.apache.mina.filter.support,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.serialization'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.spring.ssl'/>
    <p n='uses' v='org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.util,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.demux'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.jcraft.jzlib)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.jcraft.jzlib
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=net.gleamynode.netty2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.gleamynode.netty2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.demux)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.demux ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.netty)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.netty ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.serialization)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.serialization ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.textline)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.textline ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.executor)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.executor ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.chain)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.chain ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.demux)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.demux ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.multiton)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.multiton ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.jmx)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.jmx ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.spring)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.spring ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.spring.ssl)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.spring.ssl ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.management)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.management ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.socket.nio ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.socket.nio.support
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.vmpipe ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe.support)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.vmpipe.support ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.util)(version&gt;=1.1.6))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.util ;version=1.1.6
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.commons-dbcp/1.2.2.2' presentationname='Apache ServiceMix Bundles: commons-dbcp-1.2.2' symbolicname='org.apache.servicemix.bundles.commons-dbcp' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-dbcp/1.2.2_2/org.apache.servicemix.bundles.commons-dbcp-1.2.2_2.jar' version='1.2.2.2'>
  <description>
    This bundle simply wraps commons-dbcp-1.2.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    181301
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: commons-dbcp-1.2.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.commons-dbcp'/>
    <p n='version' t='version' v='1.2.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.pool.impl'/>
    <p n='uses' v='org.apache.commons.pool'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jocl'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.helpers'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.dbcp.datasources'/>
    <p n='uses' v='javax.naming,org.apache.commons.pool.impl,org.apache.commons.pool,javax.naming.spi,javax.sql,org.apache.commons.dbcp'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.dbcp.cpdsadapter'/>
    <p n='uses' v='javax.naming,org.apache.commons.pool.impl,org.apache.commons.pool,javax.naming.spi,org.apache.commons.dbcp,javax.sql'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.pool'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.dbcp'/>
    <p n='uses' v='org.xml.sax,org.apache.commons.pool.impl,org.apache.commons.jocl,javax.naming.spi,javax.sql,javax.naming,org.apache.commons.pool'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.dbcp ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp.cpdsadapter)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.dbcp.cpdsadapter ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp.datasources)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.dbcp.datasources ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jocl)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jocl ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.pool ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool.impl)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.pool.impl ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.commons-dbcp/1.2.2.1' presentationname='Apache ServiceMix Bundles: commons-dbcp-1.2.2' symbolicname='org.apache.servicemix.bundles.commons-dbcp' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-dbcp/1.2.2_1/org.apache.servicemix.bundles.commons-dbcp-1.2.2_1.jar' version='1.2.2.1'>
  <description>
    This bundle simply wraps commons-dbcp-1.2.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    181266
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: commons-dbcp-1.2.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.commons-dbcp'/>
    <p n='version' t='version' v='1.2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.pool.impl'/>
    <p n='uses' v='org.apache.commons.pool'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jocl'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.helpers'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.dbcp.datasources'/>
    <p n='uses' v='javax.naming,org.apache.commons.pool.impl,org.apache.commons.pool,javax.naming.spi,javax.sql,org.apache.commons.dbcp'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.dbcp.cpdsadapter'/>
    <p n='uses' v='javax.naming,org.apache.commons.pool.impl,org.apache.commons.pool,javax.naming.spi,org.apache.commons.dbcp,javax.sql'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.pool'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.dbcp'/>
    <p n='uses' v='org.xml.sax,org.apache.commons.pool.impl,org.apache.commons.jocl,javax.naming.spi,javax.sql,javax.naming,org.apache.commons.pool'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.dbcp ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp.cpdsadapter)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.dbcp.cpdsadapter ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp.datasources)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.dbcp.datasources ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jocl)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jocl ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.pool ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool.impl)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.pool.impl ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.commons-dbcp/1.2.2.3' presentationname='Apache ServiceMix Bundles: commons-dbcp-1.2.2' symbolicname='org.apache.servicemix.bundles.commons-dbcp' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-dbcp/1.2.2_3/org.apache.servicemix.bundles.commons-dbcp-1.2.2_3.jar' version='1.2.2.3'>
  <description>
    This bundle simply wraps commons-dbcp-1.2.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    124576
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: commons-dbcp-1.2.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.commons-dbcp'/>
    <p n='version' t='version' v='1.2.2.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jocl'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.helpers'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.dbcp.datasources'/>
    <p n='uses' v='javax.naming,org.apache.commons.pool.impl,org.apache.commons.pool,javax.naming.spi,javax.sql,org.apache.commons.dbcp'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.dbcp.cpdsadapter'/>
    <p n='uses' v='javax.naming,org.apache.commons.pool.impl,org.apache.commons.pool,javax.naming.spi,org.apache.commons.dbcp,javax.sql'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.dbcp'/>
    <p n='uses' v='org.xml.sax,org.apache.commons.pool.impl,org.apache.commons.jocl,javax.naming.spi,javax.sql,javax.naming,org.apache.commons.pool'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.dbcp ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp.cpdsadapter)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.dbcp.cpdsadapter ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.dbcp.datasources)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.dbcp.datasources ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jocl)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jocl ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.pool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.pool.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.fastinfoset/1.2.2.1' presentationname='Apache ServiceMix Bundles: FastInfoset-1.2.2' symbolicname='org.apache.servicemix.bundles.fastinfoset' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.fastinfoset/1.2.2_1/org.apache.servicemix.bundles.fastinfoset-1.2.2_1.jar' version='1.2.2.1'>
  <description>
    This bundle simply wraps FastInfoset-1.2.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    302740
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: FastInfoset-1.2.2'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.fastinfoset'/>
    <p n='version' t='version' v='1.2.2.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.fastinfoset.algorithm'/>
    <p n='uses' v='org.jvnet.fastinfoset,com.sun.xml.fastinfoset'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jvnet.fastinfoset.sax.helpers'/>
    <p n='uses' v='com.sun.xml.fastinfoset.algorithm,org.jvnet.fastinfoset,org.xml.sax,org.jvnet.fastinfoset.sax,org.xml.sax.ext,org.xml.sax.helpers,com.sun.xml.fastinfoset'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.fastinfoset.dom'/>
    <p n='uses' v='com.sun.xml.fastinfoset.algorithm,org.jvnet.fastinfoset,com.sun.xml.fastinfoset,org.w3c.dom,com.sun.xml.fastinfoset.vocab,com.sun.xml.fastinfoset.util'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.fastinfoset.tools'/>
    <p n='uses' v='org.xml.sax,com.sun.xml.fastinfoset.dom,javax.xml.namespace,com.sun.xml.fastinfoset,com.sun.xml.fastinfoset.sax,org.w3c.dom,com.sun.xml.fastinfoset.util,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.jvnet.fastinfoset,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.parsers,com.sun.xml.fastinfoset.vocab,com.sun.xml.fastinfoset.stax,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jvnet.fastinfoset.stax'/>
    <p n='uses' v='javax.xml.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.fastinfoset'/>
    <p n='uses' v='com.sun.xml.fastinfoset.algorithm,javax.xml.namespace,com.sun.xml.fastinfoset.util,org.jvnet.fastinfoset,org.xml.sax.helpers,com.sun.xml.fastinfoset.org.apache.xerces.util,com.sun.xml.fastinfoset.alphabet,com.sun.xml.fastinfoset.vocab'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.fastinfoset.resources'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.fastinfoset.sax'/>
    <p n='uses' v='com.sun.xml.fastinfoset.algorithm,org.xml.sax,com.sun.xml.fastinfoset,com.sun.xml.fastinfoset.util,org.jvnet.fastinfoset,org.jvnet.fastinfoset.sax,org.xml.sax.ext,org.xml.sax.helpers,com.sun.xml.fastinfoset.vocab'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.fastinfoset.util'/>
    <p n='uses' v='org.jvnet.fastinfoset,javax.xml.namespace,com.sun.xml.fastinfoset'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.fastinfoset.stax.factory'/>
    <p n='uses' v='javax.xml.stream.events,com.sun.xml.fastinfoset.tools,javax.xml.namespace,com.sun.xml.fastinfoset,javax.xml.transform,com.sun.xml.fastinfoset.stax.util,javax.xml.transform.stream,com.sun.xml.fastinfoset.stax.events,com.sun.xml.fastinfoset.stax,javax.xml.stream.util,javax.xml.stream'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jvnet.fastinfoset'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,com.sun.xml.fastinfoset.sax'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.fastinfoset.stax.util'/>
    <p n='uses' v='javax.xml.namespace,com.sun.xml.fastinfoset,javax.xml.stream'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.jvnet.fastinfoset.sax'/>
    <p n='uses' v='org.jvnet.fastinfoset,org.xml.sax,org.xml.sax.ext'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.fastinfoset.org.apache.xerces.util'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.fastinfoset.vocab'/>
    <p n='uses' v='org.jvnet.fastinfoset,javax.xml.namespace,com.sun.xml.fastinfoset,com.sun.xml.fastinfoset.util'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.fastinfoset.alphabet'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.fastinfoset.stax'/>
    <p n='uses' v='com.sun.xml.fastinfoset.algorithm,javax.xml.namespace,com.sun.xml.fastinfoset,org.jvnet.fastinfoset.stax,com.sun.xml.fastinfoset.sax,com.sun.xml.fastinfoset.util,org.jvnet.fastinfoset,com.sun.xml.fastinfoset.org.apache.xerces.util,com.sun.xml.fastinfoset.vocab,javax.xml.stream'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.fastinfoset.stax.events'/>
    <p n='uses' v='javax.xml.stream.events,com.sun.xml.fastinfoset,javax.xml.namespace,com.sun.xml.fastinfoset.org.apache.xerces.util,com.sun.xml.fastinfoset.stax,javax.xml.stream.util,javax.xml.stream'/>
    <p n='version' t='version' v='1.2.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.fastinfoset ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.algorithm)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.fastinfoset.algorithm ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.alphabet)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.fastinfoset.alphabet ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.dom)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.fastinfoset.dom ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.org.apache.xerces.util)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.fastinfoset.org.apache.xerces.util
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.resources)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.fastinfoset.resources ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.sax)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.fastinfoset.sax ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.fastinfoset.stax ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.events)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.fastinfoset.stax.events ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.factory)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.fastinfoset.stax.factory ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax.util)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.fastinfoset.stax.util ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.tools)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.fastinfoset.tools ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.util)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.fastinfoset.util ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.vocab)(version&gt;=1.2.2))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.fastinfoset.vocab ;version=1.2.2
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.jvnet.fastinfoset)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jvnet.fastinfoset
  </require>
  <require extend='false' filter='(&amp;(package=org.jvnet.fastinfoset.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jvnet.fastinfoset.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.jvnet.fastinfoset.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jvnet.fastinfoset.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.jvnet.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jvnet.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.mvel/2.0.8.1' presentationname='Apache ServiceMix Bundles: mvel2-2.0.8' symbolicname='org.apache.servicemix.bundles.mvel' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.mvel/2.0.8_1/org.apache.servicemix.bundles.mvel-2.0.8_1.jar' version='2.0.8.1'>
  <description>
    This bundle simply wraps mvel2-2.0.8.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    620445
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: mvel2-2.0.8'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.mvel'/>
    <p n='version' t='version' v='2.0.8.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.conversion'/>
    <p n='uses' v='org.mvel2,org.mvel2.compiler,org.mvel2.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.optimizers.impl.refl.nodes'/>
    <p n='uses' v='org.mvel2.optimizers,org.mvel2.integration,org.mvel2,org.mvel2.ast,org.mvel2.util,org.mvel2.compiler'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.asm.signature'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.templates.util.io'/>
    <p n='uses' v='org.mvel2.templates.util,org.mvel2.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.optimizers.impl.refl.collection'/>
    <p n='uses' v='org.mvel2.integration,org.mvel2,org.mvel2.util,org.mvel2.compiler'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.asm.util'/>
    <p n='uses' v='org.mvel2.asm,org.mvel2.asm.signature'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.asm'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.templates.res'/>
    <p n='uses' v='org.mvel2.integration.impl,org.mvel2.templates,org.mvel2.integration,org.mvel2.templates.util,org.mvel2,org.mvel2.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.integration.impl'/>
    <p n='uses' v='org.mvel2.integration,org.mvel2,org.mvel2.util,org.mvel2.ast'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.optimizers'/>
    <p n='uses' v='org.mvel2.integration,org.mvel2.optimizers.impl.asm,org.mvel2.optimizers.dynamic,org.mvel2,org.mvel2.compiler,org.mvel2.util,org.mvel2.optimizers.impl.refl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.optimizers.dynamic'/>
    <p n='uses' v='org.mvel2.optimizers,org.mvel2.integration,org.mvel2.optimizers.impl.asm,org.mvel2,org.mvel2.util,org.mvel2.compiler,sun.misc'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.optimizers.impl.asm'/>
    <p n='uses' v='org.mvel2.integration,org.mvel2.optimizers.impl.refl.nodes,org.mvel2.util,org.mvel2.asm,org.mvel2.optimizers,org.mvel2,org.mvel2.ast,org.mvel2.compiler'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2'/>
    <p n='uses' v='org.mvel2.conversion,org.mvel2.integration,org.mvel2.optimizers.impl.refl.nodes,org.mvel2.util,org.mvel2.integration.impl,org.mvel2.debug,org.mvel2.compiler,org.mvel2.ast'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.debug'/>
    <p n='uses' v='org.mvel2.integration,org.mvel2,org.mvel2.compiler,org.mvel2.ast,org.mvel2.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.ast'/>
    <p n='uses' v='org.mvel2.integration,org.mvel2.math,org.mvel2.util,org.mvel2.integration.impl,org.mvel2.optimizers,org.mvel2,org.mvel2.debug,org.mvel2.compiler'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.optimizers.impl.refl'/>
    <p n='uses' v='org.mvel2.optimizers.impl.refl.nodes,org.mvel2.optimizers,org.mvel2.integration,org.mvel2,org.mvel2.compiler,org.mvel2.util,org.mvel2.ast,org.mvel2.optimizers.impl.refl.collection'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.templates'/>
    <p n='uses' v='org.mvel2.templates.res,org.mvel2.integration.impl,org.mvel2.integration,org.mvel2.templates.util,org.mvel2.templates.util.io,org.mvel2,org.mvel2.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.sh.text'/>
    <p n='uses' v='org.mvel2.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.integration'/>
    <p n='uses' v='org.mvel2.ast'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.math'/>
    <p n='uses' v='org.mvel2,org.mvel2.debug,org.mvel2.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.util'/>
    <p n='uses' v='org.mvel2.integration,org.mvel2.math,org.mvel2.integration.impl,org.mvel2,org.mvel2.ast,org.mvel2.compiler,sun.misc'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.sh.command.basic'/>
    <p n='uses' v='org.mvel2.sh.text,org.mvel2.sh,org.mvel2,org.mvel2.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.sh'/>
    <p n='uses' v='org.mvel2.integration.impl,org.mvel2.templates,org.mvel2.integration,org.mvel2,org.mvel2.util,org.mvel2.sh.command.basic,org.mvel2.sh.command.file'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.templates.util'/>
    <p n='uses' v='org.mvel2.templates.res,org.mvel2.templates,org.mvel2.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.compiler'/>
    <p n='uses' v='org.mvel2.integration,org.mvel2.optimizers.impl.refl.nodes,org.mvel2.util,org.mvel2.integration.impl,org.mvel2.optimizers,org.mvel2,org.mvel2.ast'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mvel2.sh.command.file'/>
    <p n='uses' v='org.mvel2.sh'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.mvel2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.asm.signature)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.asm.signature
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.asm.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.asm.util
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.ast)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.ast
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.compiler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.compiler
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.conversion)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.conversion
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.debug)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.debug
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.integration)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.integration
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.integration.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.integration.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.math)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.math
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.optimizers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.optimizers
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.optimizers.dynamic)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.optimizers.dynamic
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.optimizers.impl.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.optimizers.impl.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.optimizers.impl.refl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.optimizers.impl.refl
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.optimizers.impl.refl.collection)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.optimizers.impl.refl.collection
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.optimizers.impl.refl.nodes)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.optimizers.impl.refl.nodes
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.sh)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.sh
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.sh.command.basic)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.sh.command.basic
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.sh.command.file)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.sh.command.file
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.sh.text)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.sh.text
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.templates)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.templates
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.templates.res)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.templates.res
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.templates.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.templates.util
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.templates.util.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.templates.util.io
  </require>
  <require extend='false' filter='(&amp;(package=org.mvel2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mvel2.util
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.geronimo-javamail_1.4_provider/1.6.0.1' presentationname='Apache ServiceMix Bundles: geronimo-javamail_1.4_provider-1.6' symbolicname='org.apache.servicemix.bundles.geronimo-javamail_1.4_provider' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.geronimo-javamail_1.4_provider/1.6_1/org.apache.servicemix.bundles.geronimo-javamail_1.4_provider-1.6_1.jar' version='1.6.0.1'>
  <description>
    This bundle simply wraps geronimo-javamail_1.4_provider-1.6.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    244887
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: geronimo-javamail_1.4_provider-1.6'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.geronimo-javamail_1.4_provider'/>
    <p n='version' t='version' v='1.6.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.util'/>
    <p n='uses' v='org.apache.geronimo.javamail.authentication,javax.mail,org.apache.geronimo.mail.util,javax.net.ssl'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.handlers'/>
    <p n='uses' v='javax.imageio,javax.imageio.metadata,javax.mail.internet,javax.activation,javax.mail'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.store.nntp.newsrc'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.store.nntp'/>
    <p n='uses' v='org.apache.geronimo.javamail.util,org.apache.geronimo.javamail.store.nntp.newsrc,javax.mail.internet,org.apache.geronimo.javamail.transport.nntp,javax.mail,org.apache.geronimo.mail.util'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.store.imap.connection'/>
    <p n='uses' v='javax.mail.search,org.apache.geronimo.javamail.util,javax.mail.internet,org.apache.geronimo.javamail.authentication,javax.mail,org.apache.geronimo.javamail.store.imap,org.apache.geronimo.mail.util'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.transport.smtp'/>
    <p n='uses' v='org.apache.geronimo.javamail.util,javax.mail.internet,org.apache.geronimo.javamail.authentication,javax.mail,org.apache.geronimo.mail.util'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.transport.nntp'/>
    <p n='uses' v='org.apache.geronimo.javamail.util,javax.mail.internet,org.apache.geronimo.javamail.authentication,javax.mail,org.apache.geronimo.mail.util'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.authentication'/>
    <p n='uses' v='org.apache.geronimo.javamail.util,javax.security.sasl,javax.mail,org.apache.geronimo.mail.util,javax.security.auth.callback'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.store.pop3.connection'/>
    <p n='uses' v='org.apache.geronimo.javamail.util,org.apache.geronimo.javamail.authentication,javax.mail,org.apache.geronimo.mail.util,org.apache.geronimo.javamail.store.pop3'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.store.imap'/>
    <p n='uses' v='org.apache.geronimo.javamail.util,javax.mail.search,org.apache.geronimo.javamail.store.imap.connection,javax.mail.internet,javax.activation,javax.mail'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.store.pop3'/>
    <p n='uses' v='org.apache.geronimo.javamail.util,javax.mail.internet,javax.mail,org.apache.geronimo.javamail.store.pop3.connection'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.provider'/>
    <p n='uses' v='javax.mail'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.metadata
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.search)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.search ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.sasl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.sasl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.authentication)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.authentication
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.handlers)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.handlers ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.provider)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.provider ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.store.imap)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.store.imap ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.store.imap.connection)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.store.imap.connection
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.store.nntp)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.store.nntp ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.store.nntp.newsrc)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.store.nntp.newsrc
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.store.pop3)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.store.pop3 ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.store.pop3.connection)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.store.pop3.connection
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.transport.nntp)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.transport.nntp
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.transport.smtp)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.transport.smtp
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.util)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.util ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.mail.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.mail.util
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.geronimo-javamail_1.4_provider/1.8.0.r755222_1' presentationname='Apache ServiceMix Bundles: geronimo-javamail_1.4_provider-1.8-r755222' symbolicname='org.apache.servicemix.bundles.geronimo-javamail_1.4_provider' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.geronimo-javamail_1.4_provider/1.8-r755222_1/org.apache.servicemix.bundles.geronimo-javamail_1.4_provider-1.8-r755222_1.jar' version='1.8.0.r755222_1'>
  <description>
    This bundle simply wraps geronimo-javamail_1.4_provider-1.8-r755222.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    249455
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: geronimo-javamail_1.4_provider-1.8-r755222'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.geronimo-javamail_1.4_provider'/>
    <p n='version' t='version' v='1.8.0.r755222_1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.util'/>
    <p n='uses' v='org.apache.geronimo.javamail.authentication,javax.mail,org.apache.geronimo.mail.util,javax.net.ssl'/>
    <p n='version' t='version' v='1.8.0.r755222'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.handlers'/>
    <p n='uses' v='javax.imageio,javax.activation,javax.imageio.stream,javax.imageio.metadata,javax.mail.internet,javax.mail'/>
    <p n='version' t='version' v='1.8.0.r755222'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.store.nntp.newsrc'/>
    <p n='version' t='version' v='1.8.0.r755222'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.store.nntp'/>
    <p n='uses' v='org.apache.geronimo.javamail.util,org.apache.geronimo.javamail.store.nntp.newsrc,javax.mail.internet,org.apache.geronimo.javamail.transport.nntp,javax.mail,org.apache.geronimo.mail.util'/>
    <p n='version' t='version' v='1.8.0.r755222'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.store.imap.connection'/>
    <p n='uses' v='javax.mail.search,org.apache.geronimo.javamail.util,javax.mail.internet,org.apache.geronimo.javamail.authentication,javax.mail,org.apache.geronimo.javamail.store.imap,org.apache.geronimo.mail.util'/>
    <p n='version' t='version' v='1.8.0.r755222'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.transport.smtp'/>
    <p n='uses' v='org.apache.geronimo.javamail.util,javax.mail.internet,org.apache.geronimo.javamail.authentication,javax.mail,org.apache.geronimo.mail.util'/>
    <p n='version' t='version' v='1.8.0.r755222'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.transport.nntp'/>
    <p n='uses' v='org.apache.geronimo.javamail.util,javax.mail.internet,org.apache.geronimo.javamail.authentication,javax.mail,org.apache.geronimo.mail.util'/>
    <p n='version' t='version' v='1.8.0.r755222'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.authentication'/>
    <p n='uses' v='org.apache.geronimo.javamail.util,javax.security.sasl,javax.mail,org.apache.geronimo.mail.util,javax.security.auth.callback'/>
    <p n='version' t='version' v='1.8.0.r755222'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.store.pop3.connection'/>
    <p n='uses' v='org.apache.geronimo.javamail.util,org.apache.geronimo.javamail.authentication,javax.mail,org.apache.geronimo.mail.util,org.apache.geronimo.javamail.store.pop3'/>
    <p n='version' t='version' v='1.8.0.r755222'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.store.imap'/>
    <p n='uses' v='org.apache.geronimo.javamail.util,javax.mail.search,org.apache.geronimo.javamail.store.imap.connection,javax.mail.internet,javax.activation,javax.mail'/>
    <p n='version' t='version' v='1.8.0.r755222'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.store.pop3'/>
    <p n='uses' v='org.apache.geronimo.javamail.util,javax.mail.internet,javax.mail,org.apache.geronimo.javamail.store.pop3.connection'/>
    <p n='version' t='version' v='1.8.0.r755222'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.javamail.provider'/>
    <p n='uses' v='javax.mail'/>
    <p n='version' t='version' v='1.8.0.r755222'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.metadata
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.search)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.search ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.sasl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.sasl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.authentication)(version&gt;=1.8.0.r755222))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.authentication
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.8.0.r755222
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.handlers)(version&gt;=1.8.0.r755222))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.handlers ;version=1.8.0.r755222
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.provider)(version&gt;=1.8.0.r755222))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.provider ;version=1.8.0.r755222
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.store.imap)(version&gt;=1.8.0.r755222))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.store.imap ;version=1.8.0.r755222
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.store.imap.connection)(version&gt;=1.8.0.r755222))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.store.imap.connection
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.8.0.r755222
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.store.nntp)(version&gt;=1.8.0.r755222))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.store.nntp ;version=1.8.0.r755222
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.store.nntp.newsrc)(version&gt;=1.8.0.r755222))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.store.nntp.newsrc
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.8.0.r755222
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.store.pop3)(version&gt;=1.8.0.r755222))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.store.pop3 ;version=1.8.0.r755222
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.store.pop3.connection)(version&gt;=1.8.0.r755222))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.store.pop3.connection
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.8.0.r755222
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.transport.nntp)(version&gt;=1.8.0.r755222))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.transport.nntp
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.8.0.r755222
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.transport.smtp)(version&gt;=1.8.0.r755222))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.transport.smtp
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.8.0.r755222
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.javamail.util)(version&gt;=1.8.0.r755222))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.javamail.util ;version=1.8.0.r755222
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.mail.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.mail.util
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.woodstox/3.2.7.1' presentationname='Apache ServiceMix Bundles: woodstox-3.2.7' symbolicname='org.apache.servicemix.bundles.woodstox' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.woodstox/3.2.7_1/org.apache.servicemix.bundles.woodstox-3.2.7_1.jar' version='3.2.7.1'>
  <description>
    This bundle simply wraps woodstox-3.2.7.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    536896
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: woodstox-3.2.7'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.woodstox'/>
    <p n='version' t='version' v='3.2.7.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.stax2.validation'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.compat'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.evt'/>
    <p n='uses' v='com.ctc.wstx.compat,javax.xml.stream.events,com.ctc.wstx.sw,org.codehaus.stax2.evt,com.ctc.wstx.ent,com.ctc.wstx.util,org.codehaus.stax2,com.ctc.wstx.exc,com.ctc.wstx.dtd,javax.xml.namespace,com.ctc.wstx.sr,com.ctc.wstx.io,com.ctc.wstx.cfg,javax.xml.stream.util,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.stax2.evt'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.stax'/>
    <p n='uses' v='javax.xml.stream.events,com.ctc.wstx.sw,org.codehaus.stax2.io,org.codehaus.stax2,com.ctc.wstx.dtd,javax.xml.namespace,javax.xml.transform,com.ctc.wstx.cfg,javax.xml.transform.stream,com.ctc.wstx.dom,javax.xml.stream.util,javax.xml.stream,com.ctc.wstx.evt,org.codehaus.stax2.evt,com.ctc.wstx.util,org.xml.sax,com.ctc.wstx.exc,com.ctc.wstx.api,com.ctc.wstx.sr,javax.xml.transform.dom,javax.xml.transform.sax,com.ctc.wstx.io'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.ent'/>
    <p n='uses' v='com.ctc.wstx.evt,com.ctc.wstx.api,com.ctc.wstx.io,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.sw'/>
    <p n='uses' v='org.codehaus.stax2.validation,javax.xml.stream.events,org.codehaus.stax2.io,com.ctc.wstx.util,org.codehaus.stax2,com.ctc.wstx.api,com.ctc.wstx.exc,com.ctc.wstx.sr,javax.xml.namespace,com.ctc.wstx.io,com.ctc.wstx.cfg,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.stax2.io'/>
    <p n='uses' v='javax.xml.transform'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.util'/>
    <p n='uses' v='com.ctc.wstx.compat,org.codehaus.stax2.validation,org.xml.sax,com.ctc.wstx.api,com.ctc.wstx.dtd,javax.xml.namespace,org.xml.sax.ext,com.ctc.wstx.cfg,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.stax2'/>
    <p n='uses' v='org.codehaus.stax2.validation,javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.exc'/>
    <p n='uses' v='org.codehaus.stax2.validation,com.ctc.wstx.compat,com.ctc.wstx.util,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.api'/>
    <p n='uses' v='com.ctc.wstx.compat,com.ctc.wstx.ent,org.codehaus.stax2.io,com.ctc.wstx.util,org.codehaus.stax2,com.ctc.wstx.dtd,com.ctc.wstx.io,com.ctc.wstx.cfg,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.sr'/>
    <p n='uses' v='com.ctc.wstx.compat,org.codehaus.stax2.validation,com.ctc.wstx.evt,com.ctc.wstx.sw,com.ctc.wstx.ent,com.ctc.wstx.util,org.xml.sax,org.codehaus.stax2,com.ctc.wstx.api,com.ctc.wstx.exc,javax.xml.namespace,com.ctc.wstx.dtd,org.xml.sax.ext,com.ctc.wstx.io,com.ctc.wstx.cfg,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.dtd'/>
    <p n='uses' v='com.ctc.wstx.compat,org.codehaus.stax2.validation,com.ctc.wstx.ent,com.ctc.wstx.util,org.codehaus.stax2,com.ctc.wstx.api,com.ctc.wstx.exc,com.ctc.wstx.sr,com.ctc.wstx.io,com.ctc.wstx.cfg,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.msv'/>
    <p n='uses' v='org.codehaus.stax2.validation,com.sun.msv.grammar.trex,org.xml.sax,com.ctc.wstx.util,com.sun.msv.reader.trex.ng,com.ctc.wstx.exc,com.ctc.wstx.api,com.sun.msv.verifier,com.sun.msv.reader.util,com.sun.msv.verifier.regexp,com.sun.msv.grammar,org.relaxng.datatype,com.sun.msv.reader,javax.xml.parsers,com.sun.msv.util,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.sax'/>
    <p n='uses' v='com.ctc.wstx.stax,org.xml.sax,com.ctc.wstx.util,org.codehaus.stax2,com.ctc.wstx.api,com.ctc.wstx.exc,com.ctc.wstx.dtd,com.ctc.wstx.sr,org.xml.sax.ext,javax.xml.parsers,com.ctc.wstx.io,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.stax2.ri'/>
    <p n='uses' v='org.codehaus.stax2.validation,org.codehaus.stax2,javax.xml.namespace,javax.xml.stream.util,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.io'/>
    <p n='uses' v='com.ctc.wstx.util,org.codehaus.stax2,com.ctc.wstx.api,com.ctc.wstx.exc,javax.xml.transform,com.ctc.wstx.cfg,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.cfg'/>
    <p n='uses' v='javax.xml.stream'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.ctc.wstx.dom'/>
    <p n='uses' v='org.codehaus.stax2.validation,com.ctc.wstx.util,org.codehaus.stax2,com.ctc.wstx.api,com.ctc.wstx.exc,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,com.ctc.wstx.io,com.ctc.wstx.cfg,javax.xml.stream'/>
    <p n='version' t='version' v='3.2.7'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.api)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.api ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.cfg)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.cfg ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.compat)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.compat ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.dom)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.dom ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.dtd)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.dtd ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.ent)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.ent ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.evt)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.evt ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.exc)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.exc ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.io)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.io ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.msv)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.msv ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.sax)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.sax ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.sr)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.sr ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.stax)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.stax ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.sw)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.sw ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.util)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.util ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.msv.grammar)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.grammar
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.msv.grammar.trex)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.grammar.trex
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.msv.reader)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.reader
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.msv.reader.trex.ng)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.reader.trex.ng
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.msv.reader.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.reader.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.msv.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.msv.verifier)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.verifier
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.msv.verifier.regexp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.msv.verifier.regexp
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.stax2)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.stax2 ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.stax2.evt)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.stax2.evt ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.stax2.io)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.stax2.io ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.stax2.ri)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.stax2.ri ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.stax2.validation)(version&gt;=3.2.7))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.stax2.validation ;version=3.2.7
  </require>
  <require extend='false' filter='(&amp;(package=org.relaxng.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.relaxng.datatype
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jaxws-api-2.0/4.0.0.m1' presentationname='Apache ServiceMix OSGI Common Bundles: jaxws-api' symbolicname='org.apache.servicemix.bundles.jaxws-api-2.0' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jaxws-api-2.0/4.0-m1/org.apache.servicemix.bundles.jaxws-api-2.0-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    This bundle simply wraps jaxws-api-2.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    32232
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: jaxws-api'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jaxws-api-2.0'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.soap'/>
    <p n='uses' v='javax.xml.soap,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.http'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.soap,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.spi'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.bind,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.ws.spi,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jaxb-impl-2.0.3/4.0.0.m1' presentationname='Apache ServiceMix OSGI Common Bundles: jaxb-impl' symbolicname='org.apache.servicemix.bundles.jaxb-impl-2.0.3' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jaxb-impl-2.0.3/4.0-m1/org.apache.servicemix.bundles.jaxb-impl-2.0.3-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    This bundle simply wraps jaxb-impl-2.0.3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    802836
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: jaxb-impl'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jaxb-impl-2.0.3'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2'/>
    <p n='uses' v='com.sun.xml.bind,com.sun.xml.bind.v2.runtime,javax.xml.bind,com.sun.istack'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.txw2'/>
    <p n='uses' v='com.sun.xml.txw2.annotation,javax.xml.namespace,com.sun.xml.txw2.output'/>
    <p n='version' t='version' v='2.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.model.annotation'/>
    <p n='uses' v='com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.runtime,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.unmarshaller'/>
    <p n='uses' v='org.xml.sax,com.sun.xml.bind.v2.runtime.unmarshaller,javax.xml.bind.helpers,org.xml.sax.helpers,org.w3c.dom,javax.xml.bind'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.api.impl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.txw2.output'/>
    <p n='uses' v='org.xml.sax,com.sun.xml.txw2,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.parsers,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.util'/>
    <p n='uses' v='org.xml.sax,com.sun.xml.bind.v2.runtime.unmarshaller,com.sun.xml.bind.v2.runtime,javax.xml.namespace,javax.activation,javax.xml.transform.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.runtime.unmarshaller'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.stream.events,javax.xml.bind.attachment,javax.xml.namespace,com.sun.xml.bind.unmarshaller,javax.xml.bind.annotation.adapters,com.sun.xml.fastinfoset.sax,javax.xml.transform,com.sun.xml.bind.v2.util,javax.xml.validation,org.jvnet.staxex,javax.xml.transform.stream,com.sun.istack,javax.xml.stream,com.sun.xml.bind,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.runtime.output,org.xml.sax,javax.activation,org.w3c.dom,com.sun.xml.bind.api,javax.xml.bind.annotation,javax.xml.transform.dom,javax.xml.transform.sax,com.sun.xml.bind.util,com.sun.xml.bind.v2.runtime.reflect,org.xml.sax.helpers,com.sun.xml.bind.v2.runtime,javax.xml.bind.helpers,javax.xml.bind,com.sun.xml.fastinfoset.stax,com.sun.xml.bind.v2.runtime.property'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.marshaller'/>
    <p n='uses' v='com.sun.xml.bind.util,org.xml.sax,org.xml.sax.helpers,javax.xml.parsers,org.w3c.dom,com.sun.istack'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.model.runtime'/>
    <p n='uses' v='com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.runtime.reflect,com.sun.xml.bind.v2.runtime,javax.xml.namespace,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.runtime.reflect.opt'/>
    <p n='uses' v='com.sun.xml.bind,com.sun.xml.bind.v2.model.core,org.xml.sax,com.sun.xml.bind.v2.bytecode,com.sun.xml.bind.api,com.sun.xml.bind.v2.runtime.reflect,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.model.runtime,javax.xml.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.schemagen.xmlschema'/>
    <p n='uses' v='com.sun.xml.txw2.annotation,com.sun.xml.txw2,javax.xml.namespace'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.istack'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.helpers,javax.activation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind'/>
    <p n='uses' v='com.sun.xml.bind.v2,org.xml.sax,javax.xml.namespace,javax.xml.bind,javax.xml.datatype'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.model.core'/>
    <p n='uses' v='com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.model.annotation,javax.activation,com.sun.xml.bind.v2.runtime,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.xml.bind.v2.model.impl,javax.xml.bind,javax.xml.bind.annotation,javax.xml.transform'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.runtime.output'/>
    <p n='uses' v='javax.xml.stream.events,com.sun.xml.bind,javax.xml.bind.attachment,org.xml.sax,javax.activation,org.w3c.dom,com.sun.xml.bind.util,com.sun.xml.bind.v2.runtime.unmarshaller,org.xml.sax.helpers,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.marshaller,org.jvnet.staxex,com.sun.xml.fastinfoset.stax,com.sun.istack,javax.xml.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.bytecode'/>
    <p n='uses' v='com.sun.xml.bind'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.api'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,com.sun.xml.bind.api.impl,javax.xml.transform,com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.runtime.unmarshaller,com.sun.xml.bind.v2.runtime,javax.xml.bind,javax.xml.stream,com.sun.istack'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.model.impl'/>
    <p n='uses' v='com.sun.xml.bind.v2,com.sun.xml.bind.v2.model.annotation,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.xml.bind.api.impl,javax.xml.datatype,javax.xml.transform,com.sun.xml.bind.v2.util,com.sun.xml.bind.v2.runtime.unmarshaller,com.sun.xml.bind.v2.model.runtime,javax.xml.transform.stream,com.sun.istack,javax.xml.stream,com.sun.xml.bind,com.sun.xml.bind.v2.model.core,org.xml.sax,com.sun.xml.bind.v2.runtime.output,javax.imageio,javax.activation,com.sun.xml.bind.api,javax.xml.bind.annotation,javax.imageio.stream,com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.runtime.reflect,javax.xml.bind.helpers,com.sun.xml.bind.v2.runtime,javax.xml.bind,com.sun.xml.bind.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.model.nav'/>
    <p n='uses' v='com.sun.xml.bind.v2.runtime'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.txw2.annotation'/>
    <p n='version' t='version' v='2.0.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.schemagen'/>
    <p n='uses' v='com.sun.xml.bind.v2,com.sun.xml.bind,com.sun.xml.bind.v2.model.core,com.sun.xml.txw2,javax.activation,javax.xml.namespace,com.sun.xml.bind.api,javax.xml.bind.annotation,com.sun.xml.txw2.output,javax.xml.transform,com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.runtime,javax.xml.transform.stream,javax.xml.bind,com.sun.xml.bind.v2.schemagen.xmlschema'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.util'/>
    <p n='uses' v='com.sun.xml.bind,org.xml.sax,javax.xml.bind.helpers,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.runtime.reflect'/>
    <p n='uses' v='com.sun.xml.bind.v2,com.sun.xml.bind,com.sun.xml.bind.v2.model.core,org.xml.sax,javax.xml.bind.annotation.adapters,com.sun.xml.bind.api,com.sun.xml.bind.v2.model.impl,com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.runtime.unmarshaller,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.model.runtime,javax.xml.bind,com.sun.xml.bind.v2.runtime.reflect.opt,com.sun.istack,javax.xml.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.runtime'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,com.sun.xml.bind.v2.model.annotation,javax.xml.namespace,com.sun.xml.bind.unmarshaller,javax.xml.bind.annotation.adapters,javax.xml.transform,com.sun.xml.bind.v2.util,com.sun.xml.bind.v2.runtime.unmarshaller,javax.xml.validation,javax.xml.parsers,com.sun.xml.bind.marshaller,com.sun.xml.bind.v2.model.runtime,javax.xml.transform.stream,com.sun.istack,javax.xml.stream,com.sun.xml.bind,com.sun.xml.bind.v2.model.core,org.xml.sax,com.sun.xml.bind.v2.runtime.output,javax.activation,org.w3c.dom,com.sun.xml.bind.api,com.sun.xml.bind.v2.model.impl,javax.xml.bind.annotation,javax.xml.transform.dom,com.sun.xml.bind.v2.model.nav,javax.xml.transform.sax,com.sun.xml.bind.v2.schemagen,com.sun.xml.bind.util,com.sun.xml.bind.v2.runtime.reflect,org.xml.sax.helpers,javax.xml.bind.helpers,javax.xml.bind,com.sun.xml.bind.v2.runtime.property'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.sun.xml.bind.v2.runtime.property'/>
    <p n='uses' v='com.sun.xml.bind.v2,com.sun.xml.bind.v2.model.core,org.xml.sax,javax.xml.namespace,com.sun.xml.bind.api,javax.xml.bind.annotation,com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.util,com.sun.xml.bind.v2.runtime.unmarshaller,com.sun.xml.bind.v2.runtime.reflect,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.model.runtime,javax.xml.bind,javax.xml.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.istack)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.istack
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.api.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.api.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.unmarshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.unmarshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.bytecode)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.bytecode
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.model.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.model.annotation
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.model.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.model.core
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.model.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.model.impl
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.model.nav)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.model.nav
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.model.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.model.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.runtime.output
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime.property)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.runtime.property
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime.reflect)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.runtime.reflect
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime.reflect.opt)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.runtime.reflect.opt
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime.unmarshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.runtime.unmarshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.schemagen)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.schemagen
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.schemagen.xmlschema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.schemagen.xmlschema
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.sax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.fastinfoset.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.fastinfoset.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.txw2)(version&gt;=2.0.3))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.txw2 ;version=2.0.3
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.txw2.annotation)(version&gt;=2.0.3))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.txw2.annotation ;version=2.0.3
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.txw2.output)(version&gt;=2.0.3))' multiple='false' name='package' optional='false'>
    Import package com.sun.xml.txw2.output ;version=2.0.3
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.helpers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.stream.events
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.jvnet.staxex)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jvnet.staxex
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.xmlresolver-1.2/4.0.0.m1' presentationname='Apache ServiceMix OSGI Common Bundles: xmlresolver' symbolicname='org.apache.servicemix.bundles.xmlresolver-1.2' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.xmlresolver-1.2/4.0-m1/org.apache.servicemix.bundles.xmlresolver-1.2-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    This bundle simply wraps xmlresolver-1.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    89620
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: xmlresolver'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.xmlresolver-1.2'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.resolver.helpers'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.resolver.apps'/>
    <p n='uses' v='org.apache.xml.resolver.helpers,org.xml.sax,org.xml.sax.helpers,org.apache.xml.resolver,org.apache.xml.resolver.tools'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.resolver'/>
    <p n='uses' v='org.apache.xml.resolver.helpers,javax.xml.parsers,org.apache.xml.resolver.readers'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.resolver.tools'/>
    <p n='uses' v='org.apache.xml.resolver.helpers,javax.xml.transform.sax,org.xml.sax,org.xml.sax.helpers,javax.xml.parsers,org.apache.xml.resolver,javax.xml.transform'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.resolver.readers'/>
    <p n='uses' v='org.apache.xml.resolver.helpers,org.xml.sax,org.xml.sax.helpers,javax.xml.parsers,org.apache.xml.resolver,org.w3c.dom'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.xml.resolver.etc'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.apps)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.apps ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.etc)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.etc ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.readers)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.readers ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.commons-vfs/1.0.0.1' presentationname='Apache ServiceMix Bundles: commons-vfs-1.0' symbolicname='org.apache.servicemix.bundles.commons-vfs' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-vfs/1.0_1/org.apache.servicemix.bundles.commons-vfs-1.0_1.jar' version='1.0.0.1'>
  <description>
    This bundle simply wraps commons-vfs-1.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    367037
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: commons-vfs-1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.commons-vfs'/>
    <p n='version' t='version' v='1.0.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.provider.ram'/>
    <p n='uses' v='org.apache.commons.vfs.provider,org.apache.commons.vfs,org.apache.commons.vfs.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.provider.url'/>
    <p n='uses' v='org.apache.commons.httpclient,org.apache.commons.vfs.provider,org.apache.commons.vfs.provider.local,org.apache.commons.vfs,org.apache.commons.vfs.provider.res'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.auth'/>
    <p n='uses' v='org.apache.commons.vfs,org.apache.commons.vfs.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.provider.bzip2'/>
    <p n='uses' v='org.apache.commons.vfs,org.apache.commons.vfs.provider.compressed'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.operations.vcs'/>
    <p n='uses' v='org.apache.commons.vfs.operations,org.apache.commons.vfs'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.provider.res'/>
    <p n='uses' v='org.apache.commons.vfs.provider.url,org.apache.commons.vfs.provider,org.apache.commons.vfs'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.provider.ftp'/>
    <p n='uses' v='org.apache.commons.vfs.provider,org.apache.commons.net.ftp,org.apache.commons.vfs,org.apache.commons.logging,org.apache.commons.net.ftp.parser,org.apache.commons.vfs.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.provider.https'/>
    <p n='uses' v='org.apache.commons.vfs.provider,org.apache.commons.vfs.provider.http'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.provider.http'/>
    <p n='uses' v='org.apache.commons.httpclient.util,org.apache.commons.httpclient,org.apache.commons.vfs.provider,org.apache.commons.httpclient.methods,org.apache.commons.vfs,org.apache.commons.vfs.impl,org.apache.commons.vfs.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.provider.local'/>
    <p n='uses' v='org.apache.commons.vfs.provider,org.apache.commons.vfs,org.apache.commons.vfs.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.provider.temp'/>
    <p n='uses' v='org.apache.commons.vfs.provider,org.apache.commons.vfs.provider.local,org.apache.commons.vfs'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.tasks'/>
    <p n='uses' v='org.apache.tools.ant,org.apache.commons.vfs,org.apache.commons.logging,org.apache.commons.vfs.impl,org.apache.commons.vfs.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.provider.gzip'/>
    <p n='uses' v='org.apache.commons.vfs,org.apache.commons.vfs.provider.compressed'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.util'/>
    <p n='uses' v='org.apache.commons.vfs.provider,org.apache.commons.vfs,org.apache.commons.logging,org.apache.commons.vfs.impl'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.events'/>
    <p n='uses' v='org.apache.commons.vfs'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.provider'/>
    <p n='uses' v='org.apache.commons.vfs.events,org.apache.commons.vfs.operations,org.apache.commons.vfs,org.apache.commons.logging,org.apache.commons.vfs.cache,org.apache.commons.httpclient.util,org.apache.commons.httpclient,org.apache.commons.vfs.provider.local,org.apache.commons.vfs.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.operations'/>
    <p n='uses' v='org.apache.commons.vfs'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs'/>
    <p n='uses' v='org.apache.commons.vfs.operations,org.apache.commons.logging,org.apache.commons.vfs.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.cache'/>
    <p n='uses' v='org.apache.commons.collections.map,org.apache.commons.vfs.provider,org.apache.commons.vfs,org.apache.commons.logging,org.apache.commons.vfs.impl,org.apache.commons.vfs.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.impl'/>
    <p n='uses' v='org.apache.commons.vfs.provider,org.apache.commons.vfs.operations,org.w3c.dom,org.apache.commons.vfs,org.apache.commons.logging,org.apache.commons.vfs.cache,javax.xml.parsers,org.apache.commons.vfs.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.provider.jar'/>
    <p n='uses' v='org.apache.commons.vfs.provider,org.apache.commons.vfs.provider.zip,org.apache.commons.vfs'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.provider.zip'/>
    <p n='uses' v='org.apache.commons.vfs.provider,org.apache.commons.vfs,org.apache.commons.logging'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.provider.tar'/>
    <p n='uses' v='org.apache.commons.vfs.provider,org.apache.commons.vfs.provider.bzip2,org.apache.commons.vfs,org.apache.commons.logging'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.provider.sftp'/>
    <p n='uses' v='org.apache.commons.vfs.provider,com.jcraft.jsch,org.apache.commons.vfs,org.apache.commons.logging,org.apache.commons.vfs.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.vfs.provider.compressed'/>
    <p n='uses' v='org.apache.commons.vfs.provider,org.apache.commons.vfs'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.jcraft.jsch)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.jcraft.jsch
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.map)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.collections.map
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.httpclient
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.methods)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.httpclient.methods
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.httpclient.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.ftp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.net.ftp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.ftp.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.net.ftp.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.auth)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.auth ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.cache)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.cache ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.impl)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.impl ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.operations)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.operations ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.operations.vcs)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.operations.vcs ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.bzip2)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.bzip2 ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.compressed)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.compressed ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.ftp)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.ftp ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.gzip)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.gzip ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.http)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.http ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.https)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.https ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.jar)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.jar ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.local)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.local ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.ram)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.ram ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.res)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.res ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.sftp)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.sftp ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.tar)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.tar ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.temp)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.temp ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.url)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.url ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.zip)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.zip ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.tasks)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.tasks ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.juel/2.1.0.1' presentationname='Apache ServiceMix Bundles: juel-2.1.0' symbolicname='org.apache.servicemix.bundles.juel' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.juel/2.1.0_1/org.apache.servicemix.bundles.juel-2.1.0_1.jar' version='2.1.0.1'>
  <description>
    This bundle simply wraps juel-2.1.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    98591
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: juel-2.1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.juel'/>
    <p n='version' t='version' v='2.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='de.odysseus.el'/>
    <p n='uses' v='de.odysseus.el.misc,de.odysseus.el.tree.impl,de.odysseus.el.tree,javax.el'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='de.odysseus.el.misc'/>
    <p n='uses' v='javax.el'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='de.odysseus.el.util'/>
    <p n='uses' v='javax.el'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='de.odysseus.el.tree.impl'/>
    <p n='uses' v='de.odysseus.el.misc,de.odysseus.el.util,de.odysseus.el.tree,javax.el,de.odysseus.el.tree.impl.ast'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='de.odysseus.el.tree'/>
    <p n='uses' v='de.odysseus.el.misc,javax.el'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='de.odysseus.el.tree.impl.ast'/>
    <p n='uses' v='de.odysseus.el.misc,de.odysseus.el.tree,javax.el'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=de.odysseus.el)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package de.odysseus.el ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=de.odysseus.el.misc)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package de.odysseus.el.misc ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=de.odysseus.el.tree)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package de.odysseus.el.tree ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=de.odysseus.el.tree.impl)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package de.odysseus.el.tree.impl ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=de.odysseus.el.tree.impl.ast)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package de.odysseus.el.tree.impl.ast ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=de.odysseus.el.util)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package de.odysseus.el.util ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.el)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.el
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.mina-1.1.6-r602102/1.0.0.m1' presentationname='ServiceMix OSGI Common Bundles: mina-1.1.6-r602102' symbolicname='org.apache.servicemix.bundles.mina-1.1.6-r602102' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.mina-1.1.6-r602102/1.0-m1/org.apache.servicemix.bundles.mina-1.1.6-r602102-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    This bundle simply wraps mina-1.1.6-r602102.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    365039
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix OSGI Common Bundles: mina-1.1.6-r602102'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.mina-1.1.6-r602102'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.vmpipe'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.transport.vmpipe.support'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.vmpipe.support'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.apache.mina.common.support,org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.demux'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.support'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.spring'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.springframework.beans.factory.config,org.apache.mina.common,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.support'/>
    <p n='uses' v='com.jcraft.jzlib,org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.filter,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.filter.codec.support,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler'/>
    <p n='uses' v='org.apache.mina.handler.support,org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.jmx'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.management,org.apache.mina.filter'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.executor'/>
    <p n='uses' v='org.apache.mina.common,org.slf4j'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.common'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.filter.executor,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.socket.nio.support'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.util,org.apache.mina.transport.socket.nio'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.transport.socket.nio'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.transport.socket.nio.support,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.chain'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.handler.multiton'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.netty'/>
    <p n='uses' v='org.apache.mina.common,net.gleamynode.netty2,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.common.support'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util,org.slf4j'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.management'/>
    <p n='uses' v='org.apache.mina.common'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.textline'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.support'/>
    <p n='uses' v='org.apache.mina.common.support,org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.util'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.transport.socket.nio,org.slf4j'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter'/>
    <p n='uses' v='org.apache.mina.filter.executor,org.apache.mina.common,org.apache.mina.common.support,org.apache.mina.util,org.apache.mina.filter.support,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.serialization'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.integration.spring.ssl'/>
    <p n='uses' v='org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.util,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.mina.filter.codec.demux'/>
    <p n='uses' v='org.apache.mina.common,org.apache.mina.util,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='1.1.6.r602102'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.jcraft.jzlib)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.jcraft.jzlib
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=net.gleamynode.netty2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.gleamynode.netty2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common.support)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.common.support ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.demux)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.demux ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.netty)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.netty ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.serialization)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.serialization ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.support)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.support ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.textline)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.codec.textline ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.executor)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.executor ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.support)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.filter.support ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.chain)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.chain ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.demux)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.demux ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.multiton)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.multiton ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.support)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.handler.support ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.jmx)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.jmx ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.spring)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.spring ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.integration.spring.ssl)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.integration.spring.ssl ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.management)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.management ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.socket.nio ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio.support)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.socket.nio.support
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.vmpipe ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe.support)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.transport.vmpipe.support ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.util)(version&gt;=1.1.6.r602102))' multiple='false' name='package' optional='false'>
    Import package org.apache.mina.util ;version=1.1.6.r602102
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.commons-jexl/1.1.0.1' presentationname='Apache ServiceMix Bundles: commons-jexl-1.1' symbolicname='org.apache.servicemix.bundles.commons-jexl' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-jexl/1.1_1/org.apache.servicemix.bundles.commons-jexl-1.1_1.jar' version='1.1.0.1'>
  <description>
    This bundle simply wraps commons-jexl-1.1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    135702
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: commons-jexl-1.1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.commons-jexl'/>
    <p n='version' t='version' v='1.1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jexl.resolver'/>
    <p n='uses' v='org.apache.commons.jexl'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jexl.parser'/>
    <p n='uses' v='org.apache.commons.jexl.util.introspection,org.apache.commons.jexl.util,org.apache.commons.jexl'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jexl.util.introspection'/>
    <p n='uses' v='org.apache.commons.jexl.util,org.apache.commons.logging'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jexl.util'/>
    <p n='uses' v='org.apache.commons.jexl.util.introspection,org.apache.commons.logging'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jexl'/>
    <p n='uses' v='org.apache.commons.jexl.parser,org.apache.commons.logging,org.apache.commons.jexl.context'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jexl.junit'/>
    <p n='uses' v='junit.framework,org.apache.commons.jexl'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.jexl.context'/>
    <p n='uses' v='org.apache.commons.jexl'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jexl)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jexl ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jexl.context)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jexl.context ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jexl.junit)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jexl.junit ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jexl.parser)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jexl.parser ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jexl.resolver)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jexl.resolver ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jexl.util)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jexl.util ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jexl.util.introspection)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jexl.util.introspection ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.junit-4.4/1.0.0.m1' presentationname='ServiceMix OSGI Common Bundles: junit-4.4' symbolicname='org.apache.servicemix.bundles.junit-4.4' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.junit-4.4/1.0-m1/org.apache.servicemix.bundles.junit-4.4-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    This bundle simply wraps junit-4.4.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    151113
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix OSGI Common Bundles: junit-4.4'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.junit-4.4'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.internal'/>
    <p n='uses' v='org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.theories.internal'/>
    <p n='uses' v='org.junit.internal.runners,org.junit,org.junit.experimental.theories'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runners'/>
    <p n='uses' v='org.junit.internal.runners,org.junit,junit.framework,org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit'/>
    <p n='uses' v='org.junit.internal,org.hamcrest,org.junit.matchers'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.results'/>
    <p n='uses' v='org.junit.internal,org.hamcrest,org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.extensions'/>
    <p n='uses' v='junit.framework'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.theories.suppliers'/>
    <p n='uses' v='org.junit.experimental.theories'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.textui'/>
    <p n='uses' v='junit.runner,junit.framework'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runner.manipulation'/>
    <p n='uses' v='org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.theories'/>
    <p n='uses' v='org.junit.internal.runners,org.junit.experimental.theories.internal'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runner.notification'/>
    <p n='uses' v='org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.runner'/>
    <p n='uses' v='junit.framework'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.internal.runners'/>
    <p n='uses' v='org.junit,junit.extensions,junit.framework,org.junit.runner.manipulation,org.junit.runner.notification,org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.internal.requests'/>
    <p n='uses' v='org.junit.internal.runners,org.junit.runners,org.junit,junit.framework,org.junit.runner.manipulation,org.junit.runner.notification,org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.framework'/>
    <p n='uses' v='org.junit,org.junit.runner.manipulation,org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.matchers'/>
    <p n='uses' v='org.hamcrest.core,org.hamcrest'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runner'/>
    <p n='uses' v='org.junit.internal,junit.runner,org.junit.internal.runners,org.junit.internal.requests,junit.framework,org.junit.runner.manipulation,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=junit.extensions)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.extensions ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.runner)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.runner ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.textui)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.textui ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.hamcrest
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.hamcrest.core
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.results)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.results ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.theories)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.theories ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.theories.internal)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.theories.internal ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.theories.suppliers)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.theories.suppliers ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.internal)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.internal ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.internal.requests)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.internal.requests ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.internal.runners)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.internal.runners ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.matchers)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.matchers ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runner)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runner ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runner.manipulation)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runner.manipulation ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runner.notification)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runner.notification ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runners)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runners ;version=4.4.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.junit-4.4/1.0.0.m2' presentationname='ServiceMix OSGI Common Bundles: junit-4.4' symbolicname='org.apache.servicemix.bundles.junit-4.4' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.junit-4.4/1.0-m2/org.apache.servicemix.bundles.junit-4.4-1.0-m2.jar' version='1.0.0.m2'>
  <description>
    This bundle simply wraps junit-4.4.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    151110
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix OSGI Common Bundles: junit-4.4'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.junit-4.4'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.internal'/>
    <p n='uses' v='org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.theories.internal'/>
    <p n='uses' v='org.junit.internal.runners,org.junit,org.junit.experimental.theories'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runners'/>
    <p n='uses' v='org.junit.internal.runners,org.junit,junit.framework,org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit'/>
    <p n='uses' v='org.junit.internal,org.hamcrest,org.junit.matchers'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.results'/>
    <p n='uses' v='org.junit.internal,org.hamcrest,org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.extensions'/>
    <p n='uses' v='junit.framework'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.theories.suppliers'/>
    <p n='uses' v='org.junit.experimental.theories'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.textui'/>
    <p n='uses' v='junit.runner,junit.framework'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runner.manipulation'/>
    <p n='uses' v='org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.theories'/>
    <p n='uses' v='org.junit.internal.runners,org.junit.experimental.theories.internal'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runner.notification'/>
    <p n='uses' v='org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.runner'/>
    <p n='uses' v='junit.framework'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.internal.runners'/>
    <p n='uses' v='org.junit,junit.extensions,junit.framework,org.junit.runner.manipulation,org.junit.runner.notification,org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.internal.requests'/>
    <p n='uses' v='org.junit.internal.runners,org.junit.runners,org.junit,junit.framework,org.junit.runner.manipulation,org.junit.runner.notification,org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.framework'/>
    <p n='uses' v='org.junit,org.junit.runner.manipulation,org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.matchers'/>
    <p n='uses' v='org.hamcrest.core,org.hamcrest'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runner'/>
    <p n='uses' v='org.junit.internal,junit.runner,org.junit.internal.runners,org.junit.internal.requests,junit.framework,org.junit.runner.manipulation,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=junit.extensions)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.extensions ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.runner)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.runner ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.textui)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.textui ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.hamcrest
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.hamcrest.core
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.results)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.results ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.theories)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.theories ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.theories.internal)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.theories.internal ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.theories.suppliers)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.theories.suppliers ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.internal)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.internal ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.internal.requests)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.internal.requests ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.internal.runners)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.internal.runners ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.matchers)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.matchers ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runner)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runner ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runner.manipulation)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runner.manipulation ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runner.notification)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runner.notification ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runners)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runners ;version=4.4.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.junit-4.4/1.0.0.m3' presentationname='Apache ServiceMix OSGI Common Bundles: junit-4.4' symbolicname='org.apache.servicemix.bundles.junit-4.4' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.junit-4.4/1.0-m3/org.apache.servicemix.bundles.junit-4.4-1.0-m3.jar' version='1.0.0.m3'>
  <description>
    This bundle simply wraps junit-4.4.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    151323
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: junit-4.4'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.junit-4.4'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.internal'/>
    <p n='uses' v='org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.theories.internal'/>
    <p n='uses' v='org.junit.internal.runners,org.junit,org.junit.experimental.theories'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runners'/>
    <p n='uses' v='org.junit.internal.runners,org.junit,junit.framework,org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit'/>
    <p n='uses' v='org.junit.internal,org.hamcrest,org.junit.matchers'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.results'/>
    <p n='uses' v='org.junit.internal,org.hamcrest,org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.extensions'/>
    <p n='uses' v='junit.framework'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.theories.suppliers'/>
    <p n='uses' v='org.junit.experimental.theories'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.textui'/>
    <p n='uses' v='junit.runner,junit.framework'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runner.manipulation'/>
    <p n='uses' v='org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.theories'/>
    <p n='uses' v='org.junit.internal.runners,org.junit.experimental.theories.internal'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runner.notification'/>
    <p n='uses' v='org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.runner'/>
    <p n='uses' v='junit.framework'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.internal.runners'/>
    <p n='uses' v='org.junit,junit.extensions,junit.framework,org.junit.runner.manipulation,org.junit.runner.notification,org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.internal.requests'/>
    <p n='uses' v='org.junit.internal.runners,org.junit.runners,org.junit,junit.framework,org.junit.runner.manipulation,org.junit.runner.notification,org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.framework'/>
    <p n='uses' v='org.junit,org.junit.runner.manipulation,org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.matchers'/>
    <p n='uses' v='org.hamcrest.core,org.hamcrest'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runner'/>
    <p n='uses' v='org.junit.internal,junit.runner,org.junit.internal.runners,org.junit.internal.requests,junit.framework,org.junit.runner.manipulation,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=junit.extensions)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.extensions ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.runner)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.runner ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.textui)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.textui ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.hamcrest
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.hamcrest.core
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.results)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.results ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.theories)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.theories ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.theories.internal)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.theories.internal ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.theories.suppliers)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.theories.suppliers ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.internal)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.internal ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.internal.requests)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.internal.requests ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.internal.runners)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.internal.runners ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.matchers)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.matchers ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runner)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runner ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runner.manipulation)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runner.manipulation ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runner.notification)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runner.notification ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runners)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runners ;version=4.4.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.junit-4.4/1.0.0.rc1' presentationname='Apache ServiceMix OSGI Common Bundles: junit-4.4' symbolicname='org.apache.servicemix.bundles.junit-4.4' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.junit-4.4/1.0.0-rc1/org.apache.servicemix.bundles.junit-4.4-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    This bundle simply wraps junit-4.4.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    151295
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: junit-4.4'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.junit-4.4'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.internal'/>
    <p n='uses' v='org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.theories.internal'/>
    <p n='uses' v='org.junit.internal.runners,org.junit,org.junit.experimental.theories'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runners'/>
    <p n='uses' v='org.junit.internal.runners,org.junit,junit.framework,org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit'/>
    <p n='uses' v='org.junit.internal,org.hamcrest,org.junit.matchers'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.results'/>
    <p n='uses' v='org.junit.internal,org.hamcrest,org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.extensions'/>
    <p n='uses' v='junit.framework'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.theories.suppliers'/>
    <p n='uses' v='org.junit.experimental.theories'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.textui'/>
    <p n='uses' v='junit.runner,junit.framework'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runner.manipulation'/>
    <p n='uses' v='org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.experimental.theories'/>
    <p n='uses' v='org.junit.internal.runners,org.junit.experimental.theories.internal'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runner.notification'/>
    <p n='uses' v='org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.runner'/>
    <p n='uses' v='junit.framework'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.internal.runners'/>
    <p n='uses' v='org.junit,junit.extensions,junit.framework,org.junit.runner.manipulation,org.junit.runner.notification,org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.internal.requests'/>
    <p n='uses' v='org.junit.internal.runners,org.junit.runners,org.junit,junit.framework,org.junit.runner.manipulation,org.junit.runner.notification,org.junit.runner'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='junit.framework'/>
    <p n='uses' v='org.junit,org.junit.runner.manipulation,org.junit.runner,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.matchers'/>
    <p n='uses' v='org.hamcrest.core,org.hamcrest'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.junit.runner'/>
    <p n='uses' v='org.junit.internal,junit.runner,org.junit.internal.runners,org.junit.internal.requests,junit.framework,org.junit.runner.manipulation,org.junit.runner.notification'/>
    <p n='version' t='version' v='4.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=junit.extensions)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.extensions ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.framework ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.runner)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.runner ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=junit.textui)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package junit.textui ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.hamcrest
  </require>
  <require extend='false' filter='(&amp;(package=org.hamcrest.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.hamcrest.core
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.results)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.results ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.theories)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.theories ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.theories.internal)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.theories.internal ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.experimental.theories.suppliers)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.experimental.theories.suppliers ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.internal)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.internal ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.internal.requests)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.internal.requests ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.internal.runners)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.internal.runners ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.matchers)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.matchers ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runner)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runner ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runner.manipulation)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runner.manipulation ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runner.notification)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runner.notification ;version=4.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.junit.runners)(version&gt;=4.4.0))' multiple='false' name='package' optional='false'>
    Import package org.junit.runners ;version=4.4.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.httpcore/4.0.0.alpha6_1' presentationname='Apache ServiceMix Bundles: httpcore-4.0-alpha6' symbolicname='org.apache.servicemix.bundles.httpcore' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.httpcore/4.0-alpha6_1/org.apache.servicemix.bundles.httpcore-4.0-alpha6_1.jar' version='4.0.0.alpha6_1'>
  <description>
    This bundle simply wraps httpcore-4.0-alpha6.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    308877
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: httpcore-4.0-alpha6'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.httpcore'/>
    <p n='version' t='version' v='4.0.0.alpha6_1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.nio.reactor'/>
    <p n='uses' v='org.apache.http.util'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.util.concurrent'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.message'/>
    <p n='uses' v='org.apache.http,org.apache.http.params,org.apache.http.protocol,org.apache.http.util'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.impl.nio.codecs'/>
    <p n='uses' v='org.apache.http.nio.reactor,org.apache.http.message,org.apache.http.params,org.apache.http,org.apache.http.impl.io,org.apache.http.nio,org.apache.http.util,org.apache.http.protocol'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.impl'/>
    <p n='uses' v='org.apache.http.message,org.apache.http.entity,org.apache.http.params,org.apache.http.impl.entity,org.apache.http,org.apache.http.io,org.apache.http.impl.io,org.apache.http.protocol'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.entity'/>
    <p n='uses' v='org.apache.http,org.apache.http.message,org.apache.http.util'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.nio.entity'/>
    <p n='uses' v='org.apache.http,org.apache.http.entity,org.apache.http.nio.util'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.params'/>
    <p n='uses' v='org.apache.http'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.impl.entity'/>
    <p n='uses' v='org.apache.http,org.apache.http.io,org.apache.http.impl.io,org.apache.http.entity,org.apache.http.params'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http'/>
    <p n='uses' v='org.apache.http.params,org.apache.http.util,org.apache.http.protocol'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.impl.nio'/>
    <p n='uses' v='org.apache.http.nio.reactor,org.apache.http.impl.nio.codecs,org.apache.http.message,org.apache.http.entity,org.apache.http.impl,org.apache.http.params,org.apache.http.impl.entity,org.apache.http,org.apache.http.io,org.apache.http.impl.io,org.apache.http.impl.nio.reactor,org.apache.http.nio,org.apache.http.protocol,org.apache.http.nio.util'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.io'/>
    <p n='uses' v='org.apache.http,org.apache.http.util'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.impl.io'/>
    <p n='uses' v='org.apache.http,org.apache.http.io,org.apache.http.message,org.apache.http.params,org.apache.http.protocol,org.apache.http.util'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.impl.nio.reactor'/>
    <p n='uses' v='org.apache.http.nio.reactor,org.apache.http.util.concurrent,org.apache.http.impl,org.apache.http.params,org.apache.http,org.apache.http.impl.nio,org.apache.http.nio.params,org.apache.http.nio,org.apache.http.util,org.apache.http.nio.util,javax.net.ssl'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.nio.ssl'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.nio.params'/>
    <p n='uses' v='org.apache.http.params'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.nio'/>
    <p n='uses' v='org.apache.http,org.apache.http.protocol'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.util'/>
    <p n='uses' v='org.apache.http,org.apache.http.message,org.apache.http.protocol'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.protocol'/>
    <p n='uses' v='org.apache.http,org.apache.http.entity,org.apache.http.params,org.apache.http.util'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.nio.util'/>
    <p n='uses' v='org.apache.http.nio'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.http.nio.protocol'/>
    <p n='uses' v='org.apache.http,org.apache.http.util.concurrent,org.apache.http.entity,org.apache.http.nio.entity,org.apache.http.nio,org.apache.http.params,org.apache.http.util,org.apache.http.protocol,org.apache.http.nio.util'/>
    <p n='version' t='version' v='4.0.0.alpha6'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.entity)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.entity ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.impl)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.impl ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.impl.entity)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.impl.entity ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.impl.io)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.impl.io ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.impl.nio)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.impl.nio ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.impl.nio.codecs)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.impl.nio.codecs ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.impl.nio.reactor)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.impl.nio.reactor ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.io)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.io ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.message)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.message ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.nio)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.nio ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.nio.entity)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.nio.entity ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.nio.params)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.nio.params ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.nio.protocol)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.nio.protocol ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.nio.reactor)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.nio.reactor ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.nio.ssl)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.nio.ssl ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.nio.util)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.nio.util ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.params)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.params ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.protocol)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.protocol ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.util)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.util ;version=4.0.0.alpha6
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.http.util.concurrent)(version&gt;=4.0.0.alpha6))' multiple='false' name='package' optional='false'>
    Import package org.apache.http.util.concurrent ;version=4.0.0.alpha6
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.groovy/1.5.6.1' presentationname='Apache ServiceMix Bundles: groovy-1.5.6' symbolicname='org.apache.servicemix.bundles.groovy' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.groovy/1.5.6_1/org.apache.servicemix.bundles.groovy-1.5.6_1.jar' version='1.5.6.1'>
  <description>
    This bundle simply wraps groovy-1.5.6.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2336720
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: groovy-1.5.6'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.groovy'/>
    <p n='version' t='version' v='1.5.6.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.antlr'/>
    <p n='uses' v='javax.swing.text,org.codehaus.groovy,org.codehaus.groovy.antlr.parser,org.codehaus.groovy.ast,org.codehaus.groovy.control,javax.swing.border,org.codehaus.groovy.ast.stmt,com.thoughtworks.xstream,antlr.collections,org.codehaus.groovy.syntax,org.codehaus.groovy.ast.expr,org.codehaus.groovy.antlr.treewalker,antlr.debug.misc,javax.swing,antlr'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.sql'/>
    <p n='uses' v='org.codehaus.groovy.ast,javax.sql,org.codehaus.groovy.ast.stmt,org.codehaus.groovy.syntax,org.codehaus.groovy.runtime,org.codehaus.groovy.ast.expr,groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.servlet'/>
    <p n='uses' v='javax.servlet.http,groovy.util,groovy.text,javax.servlet.jsp,javax.servlet,org.codehaus.groovy.runtime,groovy.xml,groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.ui.view'/>
    <p n='uses' v='javax.swing.text,org.codehaus.groovy.runtime.typehandling,org.codehaus.groovy.runtime.wrappers,org.codehaus.groovy.runtime,groovy.ui,javax.print.attribute.standard,groovy.lang,groovy.ui.text,javax.swing'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.ast'/>
    <p n='uses' v='org.codehaus.groovy.vmplugin,org.codehaus.groovy,org.codehaus.groovy.control.messages,org.codehaus.groovy.control,org.objectweb.asm,org.codehaus.groovy.ast.stmt,org.codehaus.groovy.syntax,org.codehaus.groovy.runtime,org.codehaus.groovy.ast.expr,groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.ant'/>
    <p n='uses' v='groovy.util,org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,org.apache.tools.ant,org.objectweb.asm.tree,org.objectweb.asm.util,org.codehaus.groovy.tools.groovydoc,org.codehaus.groovy.control,org.objectweb.asm,org.codehaus.groovy.tools.javac,org.objectweb.asm.tree.analysis,org.apache.tools.ant.util,org.apache.tools.ant.listener,org.codehaus.groovy.runtime,groovy.lang,org.codehaus.groovy.tools,org.apache.commons.cli'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.tools.shell.commands'/>
    <p n='uses' v='org.codehaus.groovy.tools.shell.util,org.codehaus.groovy.tools.shell,org.codehaus.groovy.control,groovy.inspect.swingui,org.codehaus.groovy.runtime.typehandling,org.codehaus.groovy.runtime.wrappers,org.codehaus.groovy.runtime,jline,groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.model'/>
    <p n='uses' v='javax.swing.table,org.codehaus.groovy.runtime,groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.groovydoc'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.control.io'/>
    <p n='uses' v='org.codehaus.groovy.control'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.inspect.swingui'/>
    <p n='uses' v='javax.swing.table,javax.swing.event,groovy.swing,org.codehaus.groovy.runtime,groovy.ui,groovy.lang,javax.swing,groovy.inspect'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.binding'/>
    <p n='uses' v='org.codehaus.groovy.runtime,groovy.lang,javax.swing'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.runtime'/>
    <p n='uses' v='groovy.util,org.codehaus.groovy.runtime.wrappers,org.w3c.dom,org.codehaus.groovy.runtime.typehandling,groovy.io,org.codehaus.groovy.runtime.metaclass,groovy.time,org.codehaus.groovy.reflection,groovy.xml.dom,groovy.lang,junit.framework,org.codehaus.groovy.tools'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.mock.interceptor'/>
    <p n='uses' v='groovy.util,org.codehaus.groovy.runtime,junit.framework,groovy.lang,org.codehaus.groovy.runtime.typehandling'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.swing.impl'/>
    <p n='uses' v='groovy.lang,javax.swing'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.ui.text'/>
    <p n='uses' v='javax.swing.undo,javax.swing.text,org.xml.sax,javax.swing.event,org.xml.sax.helpers,javax.swing.plaf,javax.swing'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.security'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.tools.groovydoc.gstring-templates.top-level'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.inspect'/>
    <p n='uses' v='org.codehaus.groovy.reflection,org.codehaus.groovy.runtime,groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.vmplugin'/>
    <p n='uses' v='org.codehaus.groovy.vmplugin.v4,org.codehaus.groovy.ast'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.antlr.parser'/>
    <p n='uses' v='org.codehaus.groovy.antlr,antlr.collections,antlr.collections.impl,antlr'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.classgen'/>
    <p n='uses' v='org.codehaus.groovy,org.codehaus.groovy.control.messages,org.codehaus.groovy.ast,org.codehaus.groovy.control,org.codehaus.groovy.runtime.typehandling,org.objectweb.asm,org.codehaus.groovy.reflection,org.codehaus.groovy.ast.stmt,org.codehaus.groovy.runtime,org.codehaus.groovy.syntax,org.codehaus.groovy.ast.expr,groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.xml.streamingmarkupsupport'/>
    <p n='uses' v='org.codehaus.groovy.runtime,groovy.lang,groovy.io,org.codehaus.groovy.runtime.typehandling'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.control'/>
    <p n='uses' v='org.codehaus.groovy.antlr,org.codehaus.groovy,org.codehaus.groovy.classgen,org.codehaus.groovy.control.messages,org.codehaus.groovy.ast,org.codehaus.groovy.control.io,org.objectweb.asm,com.thoughtworks.xstream,org.codehaus.groovy.ast.stmt,org.codehaus.groovy.syntax,org.codehaus.groovy.ast.expr,groovy.lang,org.codehaus.groovy.tools,antlr'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.bsf'/>
    <p n='uses' v='org.apache.bsf.util,org.apache.bsf,org.codehaus.groovy.runtime,org.codehaus.groovy.control,groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.text'/>
    <p n='uses' v='groovy.util,org.xml.sax,org.codehaus.groovy.control,javax.xml.parsers,org.codehaus.groovy.runtime,groovy.xml,groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.runtime.typehandling'/>
    <p n='uses' v='org.codehaus.groovy.reflection,org.codehaus.groovy.runtime,groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.ui.icons'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.runtime.metaclass'/>
    <p n='uses' v='org.codehaus.groovy.vmplugin,org.codehaus.groovy.reflection,org.codehaus.groovy.runtime.wrappers,org.codehaus.groovy.runtime,groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.swing'/>
    <p n='uses' v='groovy.util,javax.swing.table,javax.swing.border,javax.swing.plaf.metal,org.codehaus.groovy.runtime.typehandling,org.codehaus.groovy.runtime.wrappers,org.codehaus.groovy.runtime,groovy.lang,javax.swing,groovy.swing.factory'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.time'/>
    <p n='uses' v='org.codehaus.groovy.runtime'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.ast.stmt'/>
    <p n='uses' v='org.codehaus.groovy.ast,org.codehaus.groovy.ast.expr'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.ui'/>
    <p n='uses' v='org.codehaus.groovy.tools.shell.util,groovy.ui.view,groovy.inspect.swingui,org.codehaus.groovy.runtime.wrappers,org.codehaus.groovy.runtime,groovy.ui.text,javax.swing,javax.swing.text,org.codehaus.groovy.control,org.codehaus.groovy.runtime.typehandling,javax.swing.event,groovy.swing,jline,groovy.lang,org.codehaus.groovy.tools,org.apache.commons.cli'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.syntax'/>
    <p n='uses' v='org.codehaus.groovy,org.codehaus.groovy.ast,org.codehaus.groovy.control,groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.xml'/>
    <p n='uses' v='groovy.util,org.xml.sax,groovy.xml.streamingmarkupsupport,org.w3c.dom,org.codehaus.groovy.runtime.typehandling,org.xml.sax.ext,javax.xml.parsers,org.xml.sax.helpers,org.codehaus.groovy.runtime,groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.ast.expr'/>
    <p n='uses' v='org.codehaus.groovy.ast.stmt,org.codehaus.groovy.runtime,org.codehaus.groovy.syntax,org.codehaus.groovy.ast,groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.lang'/>
    <p n='uses' v='groovy.util,org.codehaus.groovy.ast,org.codehaus.groovy.runtime.wrappers,org.codehaus.groovy.runtime,groovy.security,org.codehaus.groovy,org.codehaus.groovy.classgen,org.codehaus.groovy.control,org.codehaus.groovy.runtime.typehandling,org.objectweb.asm,org.codehaus.groovy.runtime.metaclass,org.codehaus.groovy.reflection,groovy.ui,org.codehaus.groovy.ast.expr,junit.framework'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.tools'/>
    <p n='uses' v='org.codehaus.groovy,org.codehaus.groovy.control,groovy.text,org.codehaus.groovy.tools.javac,org.codehaus.groovy.runtime,groovy.lang,org.apache.commons.cli'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.swing.factory'/>
    <p n='uses' v='groovy.util,javax.swing.table,javax.swing.border,groovy.model,org.codehaus.groovy.runtime.typehandling,org.codehaus.groovy.runtime.wrappers,org.codehaus.groovy.binding,groovy.swing.binding,org.codehaus.groovy.runtime,groovy.swing.impl,groovy.lang,javax.swing'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.util'/>
    <p n='uses' v='org.codehaus.groovy.ant,org.codehaus.groovy.runtime.wrappers,groovy.util.slurpersupport,javax.xml.parsers,org.apache.tools.ant.helper,org.codehaus.groovy.runtime,org.xml.sax,org.apache.tools.ant,javax.management,org.codehaus.groovy.control,junit.textui,org.codehaus.groovy.runtime.typehandling,org.apache.tools.ant.input,org.xml.sax.helpers,groovy.xml,junit.framework,groovy.lang,org.apache.commons.cli'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.tools.shell.util'/>
    <p n='uses' v='groovy.util,org.codehaus.groovy.tools.shell,org.codehaus.groovy.runtime.typehandling,org.codehaus.groovy.runtime,jline,groovy.lang,org.apache.commons.cli'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.mock'/>
    <p n='uses' v='com.mockobjects,groovy.lang,com.mockobjects.dynamic,com.mockobjects.constraint'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.tools.shell'/>
    <p n='uses' v='groovy.util,org.codehaus.groovy.tools.shell.util,org.codehaus.groovy.control,org.codehaus.groovy.runtime.typehandling,org.codehaus.groovy.runtime.wrappers,org.codehaus.groovy.runtime,jline,groovy.lang,javax.swing'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.tools.groovydoc'/>
    <p n='uses' v='org.codehaus.groovy.antlr,org.codehaus.groovy.antlr.parser,org.codehaus.groovy.ant,org.codehaus.groovy.groovydoc,groovy.text,org.codehaus.groovy.antlr.java,org.codehaus.groovy.runtime,antlr.collections,org.codehaus.groovy.antlr.treewalker,groovy.lang,antlr'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.tools.javac'/>
    <p n='uses' v='org.codehaus.groovy.classgen,org.codehaus.groovy.control.messages,org.codehaus.groovy.ast,org.codehaus.groovy.control,org.codehaus.groovy.ast.stmt,org.codehaus.groovy.runtime,org.codehaus.groovy.ast.expr,groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.tools.xml'/>
    <p n='uses' v='groovy.util,javax.xml.parsers,org.w3c.dom'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.vmplugin.v4'/>
    <p n='uses' v='org.codehaus.groovy.vmplugin,org.codehaus.groovy.ast.stmt,org.codehaus.groovy.ast,org.codehaus.groovy.ast.expr'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.runtime.wrappers'/>
    <p n='uses' v='groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.tools.groovydoc.gstring-templates.class-level'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.antlr.java'/>
    <p n='uses' v='org.codehaus.groovy.antlr,org.codehaus.groovy.antlr.parser,org.codehaus.groovy.runtime,antlr.collections,org.codehaus.groovy.antlr.treewalker,antlr.collections.impl,org.apache.commons.cli,antlr'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.util.slurpersupport'/>
    <p n='uses' v='org.codehaus.groovy.runtime,groovy.lang,org.codehaus.groovy.runtime.typehandling'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.swing.binding'/>
    <p n='uses' v='javax.swing.event,javax.swing.text,org.codehaus.groovy.binding,javax.swing'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.tools.groovydoc.gstring-templates.package-level'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.control.messages'/>
    <p n='uses' v='org.codehaus.groovy.syntax,org.codehaus.groovy.control'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.vmplugin.v5'/>
    <p n='uses' v='org.codehaus.groovy.vmplugin,org.codehaus.groovy,org.codehaus.groovy.ast.stmt,org.codehaus.groovy.ast,org.codehaus.groovy.runtime,org.codehaus.groovy.ast.expr,groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.io'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.reflection'/>
    <p n='uses' v='org.codehaus.groovy,org.codehaus.groovy.classgen,org.codehaus.groovy.runtime.typehandling,org.codehaus.groovy.runtime.metaclass,org.codehaus.groovy.runtime.wrappers,org.codehaus.groovy.runtime,groovy.lang'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='groovy.xml.dom'/>
    <p n='uses' v='javax.xml.transform.dom,org.codehaus.groovy.runtime,groovy.xml,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.groovy.antlr.treewalker'/>
    <p n='uses' v='org.codehaus.groovy.antlr,antlr.collections'/>
    <p n='version' t='version' v='1.5.6'/>
  </capability>
  <require extend='false' filter='(&amp;(package=antlr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package antlr
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package antlr.collections
  </require>
  <require extend='false' filter='(&amp;(package=antlr.collections.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package antlr.collections.impl
  </require>
  <require extend='false' filter='(&amp;(package=antlr.debug.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package antlr.debug.misc
  </require>
  <require extend='false' filter='(&amp;(package=com.mockobjects)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.mockobjects
  </require>
  <require extend='false' filter='(&amp;(package=com.mockobjects.constraint)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.mockobjects.constraint
  </require>
  <require extend='false' filter='(&amp;(package=com.mockobjects.dynamic)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.mockobjects.dynamic
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=groovy.inspect)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.inspect ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.inspect.swingui)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.inspect.swingui ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.io)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.io ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.lang)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.lang ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.mock)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.mock ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.mock.interceptor)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.mock.interceptor ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.model)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.model ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.security)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.security ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.servlet)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.servlet ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.sql)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.sql ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.swing)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.swing ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.swing.binding)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.swing.binding ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.swing.factory)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.swing.factory ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.swing.impl)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.swing.impl ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.text)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.text ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.time)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.time ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.ui)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.ui ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.ui.icons)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.ui.icons ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.ui.text)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.ui.text ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.ui.view)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.ui.view ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.util)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.util ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.util.slurpersupport)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.util.slurpersupport ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.xml)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.xml ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.xml.dom)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.xml.dom ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=groovy.xml.streamingmarkupsupport)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package groovy.xml.streamingmarkupsupport ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.print.attribute.standard)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.print.attribute.standard
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.jsp
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.border)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing.border
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing.event
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.plaf)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing.plaf
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.plaf.metal)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing.plaf.metal
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.table)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing.table
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.text)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing.text
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.undo)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.swing.undo
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=jline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package jline
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=junit.textui)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.textui
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.bsf)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.bsf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.bsf.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.bsf.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.cli)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.cli
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.helper)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.helper
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.input
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.util
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.ant)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.ant ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.antlr)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.antlr ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.antlr.java)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.antlr.java ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.antlr.parser)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.antlr.parser ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.antlr.treewalker)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.antlr.treewalker ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.ast)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.ast ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.ast.expr)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.ast.expr ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.ast.stmt)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.ast.stmt ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.binding)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.binding ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.bsf)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.bsf ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.classgen)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.classgen ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.control)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.control ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.control.io)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.control.io ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.control.messages)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.control.messages ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.groovydoc)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.groovydoc ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.reflection)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.reflection ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.runtime)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.runtime ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.runtime.metaclass)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.runtime.metaclass ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.runtime.typehandling)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.runtime.typehandling ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.runtime.wrappers)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.runtime.wrappers ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.syntax)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.syntax ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.tools)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.tools ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.tools.groovydoc)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.tools.groovydoc ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.tools.groovydoc.gstring-templates.class-level)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.tools.groovydoc.gstring-templates.class-level
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.tools.groovydoc.gstring-templates.package-level)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.tools.groovydoc.gstring-templates.package-level
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.tools.groovydoc.gstring-templates.top-level)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.tools.groovydoc.gstring-templates.top-level
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.tools.javac)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.tools.javac ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.tools.shell)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.tools.shell ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.tools.shell.commands)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.tools.shell.commands ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.tools.shell.util)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.tools.shell.util ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.tools.xml)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.tools.xml ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.vmplugin)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.vmplugin ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.vmplugin.v4)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.vmplugin.v4 ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.groovy.vmplugin.v5)(version&gt;=1.5.6))' multiple='false' name='package' optional='false'>
    Import package org.codehaus.groovy.vmplugin.v5 ;version=1.5.6
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.tree.analysis)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.tree.analysis
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.ognl/2.7.3.1' presentationname='Apache ServiceMix Bundles: ognl-2.7.3' symbolicname='org.apache.servicemix.bundles.ognl' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.ognl/2.7.3_1/org.apache.servicemix.bundles.ognl-2.7.3_1.jar' version='2.7.3.1'>
  <description>
    This bundle simply wraps ognl-2.7.3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    247667
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: ognl-2.7.3'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.ognl'/>
    <p n='version' t='version' v='2.7.3.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ognl.internal'/>
    <p n='uses' v='ognl'/>
    <p n='version' t='version' v='2.7.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ognl.enhance'/>
    <p n='uses' v='ognl,javassist'/>
    <p n='version' t='version' v='2.7.3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='ognl'/>
    <p n='uses' v='ognl.internal,ognl.enhance'/>
    <p n='version' t='version' v='2.7.3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javassist)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javassist
  </require>
  <require extend='false' filter='(&amp;(package=ognl)(version&gt;=2.7.3))' multiple='false' name='package' optional='false'>
    Import package ognl ;version=2.7.3
  </require>
  <require extend='false' filter='(&amp;(package=ognl.enhance)(version&gt;=2.7.3))' multiple='false' name='package' optional='false'>
    Import package ognl.enhance ;version=2.7.3
  </require>
  <require extend='false' filter='(&amp;(package=ognl.internal)(version&gt;=2.7.3))' multiple='false' name='package' optional='false'>
    Import package ognl.internal ;version=2.7.3
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.aopalliance-1.0/1.0.0.m1' presentationname='ServiceMix OSGI Common Bundles: aopalliance-1.0' symbolicname='org.apache.servicemix.bundles.aopalliance-1.0' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.aopalliance-1.0/1.0-m1/org.apache.servicemix.bundles.aopalliance-1.0-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    This bundle simply wraps aopalliance-1.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11578
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix OSGI Common Bundles: aopalliance-1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.aopalliance-1.0'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.aopalliance.aop'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.aopalliance.intercept'/>
    <p n='uses' v='org.aopalliance.aop'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.aopalliance.aop)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.aop ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.intercept)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.intercept ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.aopalliance-1.0/1.0.0.rc1' presentationname='Apache ServiceMix OSGI Common Bundles: aopalliance-1.0' symbolicname='org.apache.servicemix.bundles.aopalliance-1.0' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.aopalliance-1.0/1.0.0-rc1/org.apache.servicemix.bundles.aopalliance-1.0-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    This bundle simply wraps aopalliance-1.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11744
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: aopalliance-1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.aopalliance-1.0'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.aopalliance.aop'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.aopalliance.intercept'/>
    <p n='uses' v='org.aopalliance.aop'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.aopalliance.aop)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.aop ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.intercept)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.intercept ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.aopalliance-1.0/1.0.0.m2' presentationname='ServiceMix OSGI Common Bundles: aopalliance-1.0' symbolicname='org.apache.servicemix.bundles.aopalliance-1.0' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.aopalliance-1.0/1.0-m2/org.apache.servicemix.bundles.aopalliance-1.0-1.0-m2.jar' version='1.0.0.m2'>
  <description>
    This bundle simply wraps aopalliance-1.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11575
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix OSGI Common Bundles: aopalliance-1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.aopalliance-1.0'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.aopalliance.aop'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.aopalliance.intercept'/>
    <p n='uses' v='org.aopalliance.aop'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.aopalliance.aop)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.aop ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.intercept)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.intercept ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.aopalliance-1.0/1.0.0.m3' presentationname='Apache ServiceMix OSGI Common Bundles: aopalliance-1.0' symbolicname='org.apache.servicemix.bundles.aopalliance-1.0' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.aopalliance-1.0/1.0-m3/org.apache.servicemix.bundles.aopalliance-1.0-1.0-m3.jar' version='1.0.0.m3'>
  <description>
    This bundle simply wraps aopalliance-1.0.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11776
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: aopalliance-1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.aopalliance-1.0'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.aopalliance.aop'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.aopalliance.intercept'/>
    <p n='uses' v='org.aopalliance.aop'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.aopalliance.aop)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.aop ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.intercept)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.intercept ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.propertyset/1.3.0.1' presentationname='Apache ServiceMix Bundles: propertyset-1.3' symbolicname='org.apache.servicemix.bundles.propertyset' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.propertyset/1.3_1/org.apache.servicemix.bundles.propertyset-1.3_1.jar' version='1.3.0.1'>
  <description>
    This bundle simply wraps propertyset-1.3.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    124994
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: propertyset-1.3'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.propertyset'/>
    <p n='version' t='version' v='1.3.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.module.propertyset.map'/>
    <p n='uses' v='com.opensymphony.module.propertyset'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.module.propertyset.ofbiz'/>
    <p n='uses' v='org.ofbiz.core.util,com.opensymphony.module.propertyset,org.ofbiz.core.entity,org.w3c.dom,org.apache.commons.logging,com.opensymphony.util'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.module.propertyset.ejb.types'/>
    <p n='uses' v='org.w3c.dom,org.apache.commons.logging,com.opensymphony.module.sequence,javax.ejb,javax.naming,com.opensymphony.module.propertyset,javax.rmi,com.opensymphony.util'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.module.propertyset.verifiers'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.module.propertyset.xml'/>
    <p n='uses' v='org.xml.sax,javax.xml.parsers,com.opensymphony.module.propertyset,org.w3c.dom,com.opensymphony.module.propertyset.memory,com.opensymphony.util,javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.module.propertyset.config'/>
    <p n='uses' v='org.xml.sax,javax.xml.parsers,org.w3c.dom,org.apache.commons.logging,com.opensymphony.util'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.ejb'/>
    <p n='uses' v='com.opensymphony.module.sequence,javax.ejb,javax.naming,com.opensymphony.module.propertyset,com.opensymphony.util'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.module.propertyset.hibernate'/>
    <p n='uses' v='net.sf.hibernate,com.opensymphony.module.propertyset,org.apache.commons.logging,com.opensymphony.util,net.sf.hibernate.cfg'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.module.propertyset.aggregate'/>
    <p n='uses' v='com.opensymphony.module.propertyset,org.w3c.dom,org.apache.commons.logging'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.module.propertyset.ejb'/>
    <p n='uses' v='javax.ejb,javax.naming,com.opensymphony.module.propertyset.ejb.types,com.opensymphony.module.propertyset,org.apache.commons.logging,javax.rmi,com.opensymphony.util'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.module.propertyset.javabeans'/>
    <p n='uses' v='com.opensymphony.module.propertyset'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.module.propertyset.database'/>
    <p n='uses' v='com.opensymphony.module.propertyset,org.apache.commons.logging,com.opensymphony.util,javax.sql'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.module.propertyset'/>
    <p n='uses' v='com.opensymphony.module.propertyset.verifiers,com.opensymphony.module.propertyset.config,org.w3c.dom,org.apache.commons.logging,com.opensymphony.util'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.module.propertyset.ojb'/>
    <p n='uses' v='org.apache.ojb.broker.query,com.opensymphony.module.propertyset,org.apache.ojb.broker,org.apache.commons.logging,com.opensymphony.util'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.module.propertyset.memory'/>
    <p n='uses' v='com.opensymphony.module.propertyset'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.opensymphony.module.propertyset.cached'/>
    <p n='uses' v='com.opensymphony.module.propertyset,org.w3c.dom,com.opensymphony.module.propertyset.memory,com.opensymphony.util'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.opensymphony.ejb)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.ejb ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.propertyset)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.propertyset ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.propertyset.aggregate)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.propertyset.aggregate
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.propertyset.cached)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.propertyset.cached ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.propertyset.config)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.propertyset.config ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.propertyset.database)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.propertyset.database
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.propertyset.ejb)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.propertyset.ejb ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.propertyset.ejb.types)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.propertyset.ejb.types
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.propertyset.hibernate)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.propertyset.hibernate
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.propertyset.javabeans)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.propertyset.javabeans
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.propertyset.map)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.propertyset.map ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.propertyset.memory)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.propertyset.memory ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.propertyset.ofbiz)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.propertyset.ofbiz ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.propertyset.ojb)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.propertyset.ojb ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.propertyset.verifiers)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.propertyset.verifiers
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.propertyset.xml)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.propertyset.xml ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.module.sequence)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.module.sequence
  </require>
  <require extend='false' filter='(&amp;(package=com.opensymphony.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.opensymphony.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.ejb
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.hibernate)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.hibernate
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.hibernate.cfg)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package net.sf.hibernate.cfg
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ojb.broker)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ojb.broker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ojb.broker.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ojb.broker.query
  </require>
  <require extend='false' filter='(&amp;(package=org.ofbiz.core.entity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.ofbiz.core.entity
  </require>
  <require extend='false' filter='(&amp;(package=org.ofbiz.core.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.ofbiz.core.util
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jetty-bundle/6.1.0.12rc1_1' presentationname='Apache ServiceMix Bundles: jetty-6.1.12rc1' symbolicname='org.apache.servicemix.bundles.jetty-bundle' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jetty-bundle/6.1.12rc1_1/org.apache.servicemix.bundles.jetty-bundle-6.1.12rc1_1.jar' version='6.1.0.12rc1_1'>
  <description>
    This bundle simply wraps jetty-6.1.12rc1.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    788286
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: jetty-6.1.12rc1'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jetty-bundle'/>
    <p n='version' t='version' v='6.1.0.12rc1_1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.thread'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.component'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.servlet'/>
    <p n='uses' v='org.mortbay.util,javax.servlet.http,org.mortbay.log,javax.servlet,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.nio'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.thread,org.mortbay.io,org.mortbay.jetty,org.mortbay.util.ajax,org.mortbay.io.nio'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.management'/>
    <p n='uses' v='org.mortbay.management,org.mortbay.jetty.handler,org.mortbay.jetty'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.resource'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.util'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.deployer.management'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.log.management'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.log'/>
    <p n='uses' v='org.mortbay.util,org.slf4j'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.servlet.management'/>
    <p n='uses' v='org.mortbay.management,org.mortbay.jetty.servlet'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.io.bio'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.io'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.io'/>
    <p n='uses' v='org.mortbay.util'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.handler'/>
    <p n='uses' v='org.mortbay.util,org.mortbay.component,javax.servlet.http,org.mortbay.resource,org.mortbay.log,javax.servlet,org.mortbay.jetty.servlet,org.mortbay.io,org.mortbay.jetty.webapp,org.mortbay.jetty'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty'/>
    <p n='uses' v='org.mortbay.util,org.mortbay.component,javax.servlet.http,org.mortbay.jetty.bio,org.mortbay.thread,org.mortbay.resource,org.mortbay.io.nio,org.mortbay.jetty.security,org.mortbay.log,javax.servlet,org.mortbay.jetty.servlet,org.mortbay.jetty.handler,org.mortbay.io,org.mortbay.jetty.webapp,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.webapp.management'/>
    <p n='uses' v='org.mortbay.jetty.handler.management,org.mortbay.jetty.webapp'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.thread.management'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.util'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.thread'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.component'/>
    <p n='uses' v='org.mortbay.util,org.mortbay.log'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.bio'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.thread,org.mortbay.io.bio,org.mortbay.io,org.mortbay.jetty'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.client.security'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.util,org.mortbay.jetty.client,org.mortbay.io,org.mortbay.jetty,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.servlet.jetty'/>
    <p n='uses' v='javax.servlet.http,org.mortbay.servlet,org.mortbay.jetty'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.proxy'/>
    <p n='uses' v='org.mortbay.util,javax.servlet.http,org.mortbay.jetty.bio,javax.servlet,org.mortbay.jetty.servlet,org.mortbay.jetty.client,org.mortbay.jetty.handler,org.mortbay.io,org.mortbay.jetty.webapp,org.mortbay.jetty,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.client.webdav'/>
    <p n='uses' v='org.mortbay.util,org.mortbay.log,org.mortbay.jetty.client.security,org.mortbay.jetty.client,org.mortbay.io'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.io.nio'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.component,org.mortbay.thread,org.mortbay.io,org.mortbay.jetty'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.nio.management'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.security'/>
    <p n='uses' v='javax.servlet.http,javax.security.cert,org.mortbay.jetty.nio,org.mortbay.resource,org.mortbay.log,javax.servlet,org.mortbay.io.bio,org.mortbay.jetty.handler,org.mortbay.io,org.mortbay.jetty,org.mortbay.util,org.mortbay.component,org.mortbay.jetty.bio,org.mortbay.io.nio,org.mortbay.jetty.servlet,org.mortbay.jetty.webapp,javax.net.ssl'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.deployer'/>
    <p n='uses' v='org.mortbay.util,org.mortbay.component,org.mortbay.resource,org.mortbay.log,org.mortbay.xml,org.mortbay.jetty.handler,org.mortbay.jetty,org.mortbay.jetty.webapp'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.management'/>
    <p n='uses' v='org.mortbay.util,org.mortbay.log,org.mortbay.component,javax.management,javax.management.modelmbean,javax.management.loading'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.xml'/>
    <p n='uses' v='org.mortbay.util,org.mortbay.component,org.xml.sax,org.mortbay.resource,org.mortbay.log,javax.xml.parsers,org.xml.sax.helpers'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.component.management'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.handler.management'/>
    <p n='uses' v='org.mortbay.util,org.mortbay.management,org.mortbay.resource,org.mortbay.jetty.handler'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.servlet'/>
    <p n='uses' v='org.mortbay.util,javax.servlet.http,org.mortbay.component,org.mortbay.jetty.nio,org.mortbay.resource,org.mortbay.io.nio,org.mortbay.jetty.security,org.mortbay.log,javax.servlet,org.mortbay.io,org.mortbay.jetty.handler,org.mortbay.jetty'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.client'/>
    <p n='uses' v='org.mortbay.util,javax.servlet.http,org.mortbay.component,org.mortbay.thread,org.mortbay.jetty.client.security,org.mortbay.resource,org.mortbay.io.nio,org.mortbay.jetty.security,org.mortbay.log,org.mortbay.io.bio,org.mortbay.jetty.servlet,javax.net,org.mortbay.io,org.mortbay.jetty,javax.net.ssl'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.webapp'/>
    <p n='uses' v='org.mortbay.util,javax.servlet.http,org.mortbay.resource,org.mortbay.jetty.security,org.mortbay.jetty.deployer,org.mortbay.log,javax.servlet,org.mortbay.xml,org.mortbay.jetty.servlet,org.mortbay.jetty.handler,org.mortbay.jetty'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.util.ajax'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.util,javax.servlet.http,javax.servlet'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.cometd.management'/>
    <p n='version' t='version' v='6.1.12.rc1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.loading)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.loading
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.cert)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.cert
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.cometd.management)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.cometd.management ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.component)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.component ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.component.management)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.component.management ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.io)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.io ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.io.bio)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.io.bio ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.io.nio)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.io.nio ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.bio)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.bio ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.client)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.client ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.client.security)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.client.security ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.client.webdav)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.client.webdav ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.deployer)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.deployer ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.deployer.management)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.deployer.management ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.handler ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler.management)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.handler.management ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.management)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.management ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.nio ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio.management)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.nio.management ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.security ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.servlet ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet.management)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.servlet.management ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.webapp)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.webapp ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.webapp.management)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.webapp.management ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.log)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.log ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.log.management)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.log.management ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.management)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.management ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.proxy)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.proxy ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.resource)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.resource ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.servlet)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.servlet ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.servlet.jetty)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.servlet.jetty ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.thread ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread.management)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.thread.management ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.util ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.util.ajax ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.xml)(version&gt;=6.1.12.rc1))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.xml ;version=6.1.12.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.jetty-bundle/6.1.14.1' presentationname='Apache ServiceMix Bundles: jetty-6.1.14' symbolicname='org.apache.servicemix.bundles.jetty-bundle' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.jetty-bundle/6.1.14_1/org.apache.servicemix.bundles.jetty-bundle-6.1.14_1.jar' version='6.1.14.1'>
  <description>
    This bundle simply wraps jetty-6.1.14.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    797697
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Bundles: jetty-6.1.14'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.jetty-bundle'/>
    <p n='version' t='version' v='6.1.14.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.thread'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.component'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.servlet'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.util,javax.servlet.http,javax.servlet,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.nio'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.thread,org.mortbay.io,org.mortbay.jetty,org.mortbay.util.ajax,org.mortbay.io.nio'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.management'/>
    <p n='uses' v='org.mortbay.management,org.mortbay.jetty.handler,org.mortbay.jetty'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.resource'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.util'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.deployer.management'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.log.management'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.log'/>
    <p n='uses' v='org.mortbay.util,org.slf4j'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.servlet.management'/>
    <p n='uses' v='org.mortbay.management,org.mortbay.jetty.servlet'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.io.bio'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.io'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.io'/>
    <p n='uses' v='org.mortbay.util'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.handler'/>
    <p n='uses' v='org.mortbay.util,org.mortbay.component,javax.servlet.http,org.mortbay.resource,org.mortbay.log,javax.servlet,org.mortbay.jetty.servlet,org.mortbay.io,org.mortbay.jetty.webapp,org.mortbay.jetty'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty'/>
    <p n='uses' v='org.mortbay.util,org.mortbay.component,javax.servlet.http,org.mortbay.jetty.bio,org.mortbay.thread,org.mortbay.resource,org.mortbay.io.nio,org.mortbay.jetty.security,org.mortbay.log,javax.servlet,org.mortbay.jetty.servlet,org.mortbay.jetty.handler,org.mortbay.io,org.mortbay.jetty.webapp,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.webapp.management'/>
    <p n='uses' v='org.mortbay.jetty.handler.management,org.mortbay.jetty.webapp'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.thread.management'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.util'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.thread'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.component'/>
    <p n='uses' v='org.mortbay.util,org.mortbay.log'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.bio'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.thread,org.mortbay.io.bio,org.mortbay.io,org.mortbay.jetty'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.client.security'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.util,org.mortbay.jetty.client,org.mortbay.io,org.mortbay.jetty,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.servlet.jetty'/>
    <p n='uses' v='javax.servlet.http,org.mortbay.servlet,org.mortbay.jetty'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.proxy'/>
    <p n='uses' v='org.mortbay.util,javax.servlet.http,org.mortbay.jetty.bio,javax.servlet,org.mortbay.jetty.servlet,org.mortbay.jetty.client,org.mortbay.jetty.handler,org.mortbay.io,org.mortbay.jetty,org.mortbay.jetty.webapp,org.mortbay.util.ajax'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.client.webdav'/>
    <p n='uses' v='org.mortbay.util,org.mortbay.log,org.mortbay.jetty.client.security,org.mortbay.jetty.client,org.mortbay.io'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.io.nio'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.component,org.mortbay.thread,org.mortbay.io,org.mortbay.jetty'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.nio.management'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.security'/>
    <p n='uses' v='javax.servlet.http,javax.security.cert,org.mortbay.jetty.nio,org.mortbay.resource,org.mortbay.log,javax.servlet,org.mortbay.io.bio,org.mortbay.jetty.handler,org.mortbay.io,org.mortbay.jetty,org.mortbay.util,org.mortbay.component,org.mortbay.jetty.bio,org.mortbay.io.nio,org.mortbay.jetty.servlet,org.mortbay.jetty.webapp,javax.net.ssl'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.deployer'/>
    <p n='uses' v='org.mortbay.util,org.mortbay.component,org.mortbay.resource,org.mortbay.log,org.mortbay.xml,org.mortbay.jetty.handler,org.mortbay.jetty,org.mortbay.jetty.webapp'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.management'/>
    <p n='uses' v='org.mortbay.util,org.mortbay.log,org.mortbay.component,javax.management,javax.management.modelmbean,javax.management.loading'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.xml'/>
    <p n='uses' v='org.mortbay.util,org.mortbay.component,org.xml.sax,org.mortbay.resource,org.mortbay.log,javax.xml.parsers,org.xml.sax.helpers'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.component.management'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.handler.management'/>
    <p n='uses' v='org.mortbay.util,org.mortbay.management,org.mortbay.resource,org.mortbay.jetty.handler'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.servlet'/>
    <p n='uses' v='org.mortbay.util,javax.servlet.http,org.mortbay.component,org.mortbay.jetty.nio,org.mortbay.resource,org.mortbay.io.nio,org.mortbay.jetty.security,org.mortbay.log,javax.servlet,org.mortbay.io,org.mortbay.jetty.handler,org.mortbay.jetty'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.client'/>
    <p n='uses' v='org.mortbay.util,javax.servlet.http,org.mortbay.component,org.mortbay.thread,org.mortbay.jetty.client.security,org.mortbay.resource,org.mortbay.io.nio,org.mortbay.jetty.security,org.mortbay.log,org.mortbay.io.bio,org.mortbay.jetty.servlet,javax.net,org.mortbay.io,org.mortbay.jetty,javax.net.ssl'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.jetty.webapp'/>
    <p n='uses' v='org.mortbay.util,javax.servlet.http,org.mortbay.resource,org.mortbay.jetty.security,org.mortbay.jetty.deployer,org.mortbay.log,javax.servlet,org.mortbay.xml,org.mortbay.jetty.servlet,org.mortbay.jetty.handler,org.mortbay.jetty'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.util.ajax'/>
    <p n='uses' v='org.mortbay.log,org.mortbay.util,javax.servlet.http,javax.servlet'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mortbay.cometd.management'/>
    <p n='version' t='version' v='6.1.14'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.loading)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.loading
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.cert)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.cert
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.cometd.management)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.cometd.management ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.component)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.component ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.component.management)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.component.management ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.io)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.io ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.io.bio)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.io.bio ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.io.nio)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.io.nio ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.bio)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.bio ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.client)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.client ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.client.security)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.client.security ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.client.webdav)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.client.webdav ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.deployer)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.deployer ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.deployer.management)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.deployer.management ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.handler ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler.management)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.handler.management ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.management)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.management ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.nio ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio.management)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.nio.management ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.security ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.servlet ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet.management)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.servlet.management ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.webapp)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.webapp ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.webapp.management)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.webapp.management ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.log)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.log ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.log.management)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.log.management ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.management)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.management ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.proxy)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.proxy ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.resource)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.resource ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.servlet)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.servlet ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.servlet.jetty)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.servlet.jetty ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.thread ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread.management)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.thread.management ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.util ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.util.ajax ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.xml)(version&gt;=6.1.14))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.xml ;version=6.1.14
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.neethi-2.0.2/4.0.0.m1' presentationname='Apache ServiceMix OSGI Common Bundles: neethi' symbolicname='org.apache.servicemix.bundles.neethi-2.0.2' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.neethi-2.0.2/4.0-m1/org.apache.servicemix.bundles.neethi-2.0.2-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    This bundle simply wraps neethi-2.0.2.jar.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    30667
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: neethi'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.neethi-2.0.2'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.neethi'/>
    <p n='uses' v='org.apache.neethi.builders.xml,javax.xml.namespace,org.apache.neethi.util,sun.misc,org.apache.axiom.om.impl.llom.factory,org.apache.neethi.builders,org.apache.axiom.om,javax.xml.stream,org.apache.axiom.om.impl.builder'/>
    <p n='version' t='version' v='2.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.neethi.builders'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.axiom.om'/>
    <p n='version' t='version' v='2.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.neethi.builders.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.neethi.builders,javax.xml.namespace,org.apache.axiom.om,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.neethi.util'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axiom.om)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axiom.om
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axiom.om.impl.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axiom.om.impl.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axiom.om.impl.llom.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axiom.om.impl.llom.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=2.0.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi ;version=2.0.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi.builders)(version&gt;=2.0.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi.builders ;version=2.0.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi.builders.xml)(version&gt;=2.0.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi.builders.xml ;version=2.0.2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi.util)(version&gt;=2.0.2))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi.util ;version=2.0.2
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.servicemix.bundles.cxf-2.0.5/4.0.0.m1' presentationname='Apache ServiceMix OSGI Common Bundles: cxf' symbolicname='org.apache.servicemix.bundles.cxf-2.0.5' uri='../org/apache/servicemix/bundles/org.apache.servicemix.bundles.cxf-2.0.5/4.0-m1/org.apache.servicemix.bundles.cxf-2.0.5-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    This bundle simply wraps cxf 2.0.5.incubator.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2869546
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix OSGI Common Bundles: cxf'/>
    <p n='symbolicname' v='org.apache.servicemix.bundles.cxf-2.0.5'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.configuration.security,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor.internal,org.apache.cxf.common.util,javax.jws,org.apache.cxf,javax.xml.ws,org.apache.cxf.service,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.tools.validator,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.clustering,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.imageio,org.apache.cxf.security.transport,org.apache.cxf.configuration.security,org.apache.cxf.message,org.apache.cxf.transport.http,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.resource'/>
    <p n='uses' v='org.apache.ws.commons.schema.resolver,org.apache.cxf.common.classloader,org.xml.sax,org.apache.cxf.common.logging,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http_jetty.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.configuration.security'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.logical'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.jaxws.support,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.endpoint,javax.activation,org.apache.cxf.jaxws.handler.soap,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.io,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.security.wss4j'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.ws.security.util,javax.security.auth.callback,javax.xml.stream,org.apache.ws.security.components.crypto,org.w3c.dom,org.apache.cxf.interceptor,org.apache.ws.security.message.token,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.ws.security.handler,org.apache.cxf.binding.soap.saaj,org.apache.cxf.staxutils,org.apache.ws.security'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding'/>
    <p n='uses' v='javax.xml.validation,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint'/>
    <p n='uses' v='com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.cxf.management.annotation,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.buslifecycle,org.apache.cxf.databinding,javax.management,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.management,org.apache.cxf.configuration,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,org.apache.cxf.phase,javax.xml.datatype,org.apache.cxf.service.factory,org.apache.neethi,org.apache.cxf.ws.rm.soap,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.ws.rm.manager,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.binding.soap,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.interceptors'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,com.sun.xml.bind.v2.util,org.apache.cxf.jaxws.support,javax.xml.parsers,org.apache.cxf.jaxb,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.jaxws.handler.logical,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.databinding.source,org.apache.cxf.common.classloader,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.common.logging,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.service,javax.xml.stream,javax.mail.util,javax.imageio,javax.activation,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.objectweb.asm,javax.xml.transform.dom,javax.xml.soap,javax.imageio.stream,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.http'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,org.apache.cxf.jaxws.binding,javax.xml.ws,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.source'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.common.util,javax.xml.validation,javax.xml.transform.stream,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.xml.sax,org.apache.ws.commons.schema,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,javax.xml.transform.sax,org.apache.cxf.io,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.core'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.datatype,org.apache.cxf.tools.util,org.apache.cxf.version,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf,org.apache.cxf.tools.plugin,javax.xml.bind,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.selector'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common,org.apache.cxf.tools.validator.internal,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.saaj'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.databinding,javax.activation,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.interceptor,javax.xml.transform,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal'/>
    <p n='uses' v='javax.xml.stream.events,org.w3c.dom.ls,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.tools.validator,javax.xml.transform.sax,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.tools.validator.internal.model,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.model'/>
    <p n='uses' v='org.apache.cxf.tools.common.model,javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security.transport'/>
    <p n='uses' v='javax.net.ssl'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.phase'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.common.logging,org.apache.cxf.common.util,org.apache.cxf.extension,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.cxf.tools.common,org.xmlsoap.schemas.wsdl.http,javax.xml.namespace,org.apache.cxf.bindings.xformat,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.attachment'/>
    <p n='uses' v='org.apache.cxf.message,javax.mail.internet,javax.activation,org.apache.cxf.io,javax.mail,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.utils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,javax.management.remote'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.message,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.configuration.spring,org.apache.cxf.service,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.binding.coloc.feature'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='uses' v='org.apache.neethi,javax.wsdl.extensions,org.xml.sax,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.v200408'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.dom'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,javax.xml.validation,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.commands'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.counters'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.management,org.apache.cxf.management.interceptor,org.apache.cxf.management,org.apache.cxf.message,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.bindings.xformat,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http'/>
    <p n='uses' v='org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.binding.xml,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.service.factory,org.codehaus.jra,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.http.strategy,org.apache.cxf.binding.http.interceptor,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator'/>
    <p n='uses' v='javax.jws.soap,org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management'/>
    <p n='uses' v='javax.management,javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.xmlschema'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.xml.sax,org.apache.ws.commons.schema,javax.xml.namespace,org.w3c.dom,org.apache.ws.commons.schema.extensions,javax.xml.transform,org.apache.ws.commons.schema.resolver,org.apache.ws.commons.schema.utils'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration'/>
    <p n='uses' v='org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.clustering'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.feature,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty.spring'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http_jetty.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.validator.internal.model'/>
    <p n='uses' v='org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.wsdl,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.security'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.ts'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.jaxb,com.sun.tools.xjc.outline'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.helpers'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.transform,javax.wsdl.factory,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.transform.stream,javax.xml.ws,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,javax.xml.xpath,javax.xml.transform.dom,org.w3c.dom.bootstrap,javax.jws.soap,javax.jws'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.i18n'/>
    <p n='uses' v='org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.ws.rm,org.apache.cxf.common.i18n,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.factory'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.jaxb,org.apache.ws.commons.schema.constants,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.jaxb,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.manager'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,javax.xml.bind.annotation,javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.feature,org.apache.cxf.extension,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.endpoint,org.xml.sax,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.ws.policy.selector,javax.annotation,org.apache.cxf,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.configuration.security,javax.wsdl.extensions.soap12,javax.xml.transform,javax.servlet,javax.wsdl.factory,org.apache.cxf.transport.https,javax.xml.parsers,org.apache.cxf.ws.policy,org.apache.cxf.transports.http,javax.wsdl.xml,javax.wsdl.extensions.http,org.apache.xml.resolver,org.apache.cxf.wsdl11,org.apache.cxf.transport.http.policy,org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.message,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.common.util,javax.wsdl.extensions.schema,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.configuration,javax.wsdl.extensions,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.transports.http.configuration,org.apache.cxf.security,org.apache.cxf.helpers,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.service.model,org.apache.cxf.binding.http,org.apache.cxf.interceptor,org.apache.cxf.phase,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.wsdl11'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.ws.policy.attachment,javax.xml.namespace,org.w3c.dom,org.apache.cxf.service.model,org.apache.neethi,javax.wsdl.extensions,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.xml'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.transport.local,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.buslifecycle'/>
    <p n='uses' v='javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.interceptor'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.management,javax.xml.namespace,org.apache.cxf.management.counters,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.misc.processor,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.namespace,org.apache.cxf.jaxws.context,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.jaxws.support,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.saaj,org.apache.cxf.jaxws.handler,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.classloader'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.util'/>
    <p n='uses' v='org.apache.neethi'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.spring'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.extension,org.springframework.context,org.springframework.beans.factory.support,org.apache.cxf.configuration,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.springframework.beans.factory.wiring,org.apache.cxf.common.util,org.springframework.beans,javax.xml.bind,org.springframework.util,org.springframework.beans.factory,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl11'/>
    <p n='uses' v='javax.wsdl.extensions.soap,com.ibm.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.cxf.service.factory,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,javax.wsdl.extensions.schema,org.apache.cxf.resource,javax.wsdl.extensions.mime,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.xpath,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.resolver,javax.wsdl.extensions,org.apache.ws.commons.schema.utils,javax.annotation,org.apache.xml.resolver,org.apache.cxf,javax.xml.bind,com.ibm.wsdl.extensions.schema,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.javaee'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.model'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,javax.jws.soap,org.apache.cxf.tools.common,org.apache.cxf.common.util'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.context'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.message,javax.annotation,org.apache.cxf,org.apache.cxf.resource,javax.xml.ws,org.apache.cxf.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.databinding'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.aegis,org.apache.cxf.service.factory,org.apache.cxf.aegis.util,javax.xml.validation,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.jdom,org.apache.cxf.service.model,org.apache.cxf.databinding.source,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.ws.commons.schema.utils,org.apache.cxf.aegis.type,org.jdom.output,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.spring'/>
    <p n='uses' v='org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.ws.addressing'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.https_jetty'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.apache.cxf.transport.https,org.mortbay.jetty,org.apache.cxf.configuration.security,javax.net.ssl,org.mortbay.jetty.security'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200607'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.message'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.service,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.catalog,org.apache.cxf.tools.common.dom,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.xml.transform,org.apache.cxf.tools.common.toolspec.parser,javax.xml.transform.dom,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,javax.xml.transform.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.jdom'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,javax.xml.namespace,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis.util.stax,org.jdom,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor.address'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common,org.apache.cxf.common.i18n,org.apache.cxf.tools.util'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.common.util,org.apache.cxf.tools.common.toolspec,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment'/>
    <p n='uses' v='org.apache.neethi,javax.annotation,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.ws.policy.attachment.reference'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.bus,org.apache.cxf.common.logging,javax.management,javax.management.remote,org.apache.cxf.management,org.apache.cxf.management.jmx.export.runtime,javax.annotation,org.apache.cxf,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.test'/>
    <p n='uses' v='javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,javax.xml.transform,org.apache.cxf.message,javax.wsdl.factory,org.springframework.core.io,org.apache.cxf.service,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,javax.wsdl.xml,org.junit,org.w3c.dom,org.springframework.context,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf,junit.framework,org.springframework.beans,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.model'/>
    <p n='uses' v='org.apache.cxf.binding.soap,javax.xml.namespace,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.xml'/>
    <p n='uses' v='org.xml.sax,javanet.staxutils,org.w3c.dom,org.apache.cxf.aegis.xml.stax,org.apache.cxf.aegis,org.jdom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.xml.sax.helpers,javax.xml.parsers,org.apache.cxf.aegis.util.jdom,javax.xml.transform.stream,org.apache.cxf.aegis.util.stax,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal'/>
    <p n='uses' v='org.apache.cxf.tools.java2wsdl.processor,org.apache.cxf.tools.common,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type'/>
    <p n='uses' v='org.jdom.xpath,javax.xml.namespace,org.apache.cxf.aegis,javax.xml.transform,org.apache.cxf.aegis.util,javax.xml.validation,javax.xml.parsers,org.apache.cxf.aegis.type.mtom,org.apache.cxf.aegis.type.java5,javax.xml.transform.stream,javax.xml.ws,javax.xml.stream,org.apache.cxf.aegis.type.basic,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.aegis.type.xml,org.apache.cxf.binding.soap,org.jdom.input,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type.collection,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.resource'/>
    <p n='uses' v='javax.annotation,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.extension'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,org.apache.cxf.ws.policy.builder.primitive,org.apache.neethi,org.apache.cxf.common.classloader,org.apache.cxf.common.util,org.apache.cxf.ws.policy,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.plugin'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.invoker'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.cxf.common.util.factory,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.template'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.databinding.jaxb'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.xml.transform,org.apache.cxf.tools.common,javax.xml.validation,org.apache.cxf.common.util,javax.xml.parsers,com.sun.tools.xjc.api.impl.s2j,com.sun.codemodel,com.sun.tools.xjc,org.xml.sax,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.xml.transform.dom,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.xml'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.binding.xml.interceptor,org.apache.cxf.bindings.xformat,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.tools.validator,javax.wsdl.extensions,org.apache.cxf.binding'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.security'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.spring'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.cxf.common.logging,com.ctc.wstx.sax,org.apache.cxf.feature,org.apache.cxf.extension,org.springframework.context.support,javax.xml.transform,org.springframework.core.io,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.resource,org.springframework.beans.factory,org.apache.cxf.buslifecycle,org.springframework.core.io.support,org.xml.sax,org.springframework.core,org.w3c.dom,org.springframework.context,javax.xml.transform.dom,org.springframework.beans.factory.support,javax.xml.transform.sax,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf,org.apache.cxf.common.injection,org.springframework.beans,org.apache.cxf.configuration.spring,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.processor.internal.jaxws'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.annotation'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.mtom'/>
    <p n='uses' v='org.apache.neethi,org.apache.cxf.message,javax.xml.namespace,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.support'/>
    <p n='uses' v='org.apache.cxf.headers,javax.xml.ws.handler,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.jaxws.binding.soap,org.apache.cxf.frontend,org.apache.cxf.binding.xml,org.apache.cxf.configuration.security,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.binding.http,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws,org.apache.cxf.jaxws.context,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.service,javax.wsdl,javax.activation,org.apache.cxf.service.model,javax.xml.bind.annotation,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws.soap,javax.jws,org.apache.cxf,org.apache.cxf.jaxws.binding,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator'/>
    <p n='uses' v='org.apache.cxf.common.util,org.apache.cxf.tools.common.model,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.aegis,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.util,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb'/>
    <p n='uses' v='com.sun.xml.bind.v2,javax.xml.bind.attachment,org.apache.cxf.common.logging,org.apache.cxf.jaxb.attachment,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.datatype,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxb.io,javax.xml.validation,org.apache.cxf.common.util,com.sun.xml.bind.marshaller,org.apache.cxf.ws.addressing,javax.xml.ws,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.ws.commons.schema,org.apache.commons.lang.builder,org.w3c.dom,org.apache.cxf.databinding.source,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.commons.lang,javax.xml.transform.dom,org.apache.cxf.common.xmlschema,org.apache.ws.commons.schema.utils,com.sun.xml.bind.v2.runtime,javax.xml.bind,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.workqueue'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.common.logging,javax.management,javax.annotation,org.apache.cxf,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.feature'/>
    <p n='uses' v='org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.manager,org.apache.cxf,org.apache.cxf.ws.rm.persistence,org.apache.cxf.ws.rm.policy,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,javax.xml.namespace,org.apache.cxf.transport.jms,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.xml.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.validator'/>
    <p n='uses' v='org.apache.cxf.tools.validator,org.apache.cxf.common.logging,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11'/>
    <p n='uses' v='org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.validator.internal,org.apache.cxf.catalog,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.common,org.apache.cxf.resource,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.xml.sax,javax.wsdl.xml,org.w3c.dom,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,javax.wsdl.extensions,javax.jws.soap,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.xjc.dv'/>
    <p n='uses' v='com.sun.codemodel,com.sun.tools.xjc,com.sun.tools.xjc.model,org.xml.sax,org.apache.cxf.common.logging,com.sun.xml.xsom,javax.xml.namespace,javax.xml.bind.annotation.adapters,com.sun.tools.xjc.outline,com.sun.tools.xjc.util,org.apache.cxf.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.spring'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom,org.apache.cxf.configuration.security,org.apache.cxf.configuration.jsse.spring,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,org.apache.cxf.transport.http,org.apache.cxf.configuration.spring,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.phase,org.apache.cxf.transport,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf,javax.xml.ws,org.apache.cxf.service'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus'/>
    <p n='uses' v='org.apache.cxf.management.annotation,org.apache.cxf.buslifecycle,javax.management,org.apache.cxf,org.apache.cxf.bus.extension,org.apache.cxf.feature,org.apache.cxf.interceptor,org.apache.cxf.management'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.policy'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.addressing.soap,org.apache.cxf.ws.policy,org.w3c.dom,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.ws.policy.builder.primitive,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.toolspec,org.apache.cxf.resource,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto,org.apache.cxf.tools.wsdlto.core'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,javax.xml.namespace,org.apache.cxf.frontend,org.w3c.dom,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.annotation'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.configuration.jsse.spring'/>
    <p n='uses' v='org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,javax.security.auth.x500,org.apache.cxf.configuration.security,org.apache.cxf.common.classloader,javax.net.ssl'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.v200409'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.xml,org.apache.cxf.ws.policy,org.w3c.dom,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.context,org.apache.cxf.ws.policy.attachment.external,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.io'/>
    <p n='uses' v='javax.xml.bind.attachment,org.apache.cxf.databinding,org.apache.ws.commons.schema,javax.xml.validation,javax.xml.namespace,org.apache.cxf.jaxb,javax.xml.bind,org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.version'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.junit,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.util,org.apache.cxf.tools.common.toolspec.parser,org.apache.cxf.version,org.apache.velocity.app,org.apache.cxf.tools.common.toolspec,org.apache.velocity.context,org.apache.velocity,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.spring'/>
    <p n='uses' v='org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.ws.rm,javax.xml.namespace,org.apache.cxf.ws.rm.policy,org.w3c.dom,org.apache.cxf.ws.rm.persistence.jdbc,org.apache.cxf.configuration.spring,org.apache.cxf.ws.rm.feature'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.java5'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,javax.xml.namespace,org.apache.cxf.aegis,org.jdom,javax.xml.datatype,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.endpoint.dynamic'/>
    <p n='uses' v='org.apache.cxf.bus,org.apache.tools.ant.types,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,org.apache.cxf.service.factory,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.service,com.sun.codemodel,com.sun.tools.xjc,org.apache.cxf.databinding,org.xml.sax,org.apache.cxf.endpoint,org.apache.tools.ant,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.common.classloader,com.sun.codemodel.writer,org.apache.cxf,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.customization'/>
    <p n='uses' v='javax.wsdl,org.apache.cxf.common.logging,org.xml.sax,org.apache.cxf.catalog,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,javax.xml.xpath,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.xml.resolver,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.event'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,javax.xml.namespace,org.w3c.dom,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.bind,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service.model'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.common.xmlschema,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.io,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport'/>
    <p n='uses' v='org.apache.cxf.endpoint,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.bus.extension,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.annotation,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.simple'/>
    <p n='uses' v='org.apache.cxf.service.factory,org.apache.cxf.frontend'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.interceptor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.frontend,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.validation,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.transport,org.apache.cxf.common.classloader,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.wsdl.factory,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.binding.soap.wsdl11,org.apache.cxf.ws.addressing,javax.wsdl.extensions.mime,org.apache.cxf.service,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.tools.util,org.apache.cxf.transport,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.annotation,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor'/>
    <p n='uses' v='org.apache.cxf.tools.common,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.date'/>
    <p n='uses' v='javax.xml.datatype'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.http.strategy'/>
    <p n='uses' v='org.codehaus.jra,org.apache.cxf.common.logging,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.cxf.service.model,org.apache.cxf.binding.http'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.persistence.jdbc'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.rm,org.apache.cxf.ws.rm.persistence,org.apache.cxf.common.i18n,javax.annotation'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.staxutils'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.apache.cxf.common.util,javax.xml.parsers,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http_jetty'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.configuration.jsse,org.apache.cxf.common.logging,org.mortbay.thread,org.mortbay.jetty.nio,org.apache.cxf.transport.https_jetty,org.apache.cxf.message,javax.servlet,org.apache.cxf.transport.http,org.mortbay.jetty.handler,org.mortbay.jetty,org.apache.cxf.transports.http,org.apache.cxf.buslifecycle,org.apache.cxf.endpoint,javax.imageio,org.apache.cxf.service.model,org.apache.cxf.transport,org.mortbay.jetty.security,org.mortbay.jetty.servlet,javax.annotation,org.apache.cxf,org.apache.cxf.transports.http.configuration'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.headers'/>
    <p n='uses' v='org.apache.cxf.databinding,javax.annotation,javax.xml.namespace,org.apache.cxf,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spring'/>
    <p n='uses' v='org.apache.cxf.frontend.spring,org.apache.cxf.jaxws,javax.xml.namespace,org.w3c.dom,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.config,org.springframework.beans.factory.xml,org.apache.cxf.common.util,org.springframework.beans,org.apache.cxf.configuration.spring,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.extensions.soap'/>
    <p n='uses' v='javax.wsdl.extensions.soap,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxb.attachment'/>
    <p n='uses' v='org.apache.cxf.attachment,javax.xml.bind.attachment,org.apache.cxf.common.logging,javax.activation,org.apache.cxf.common.i18n,org.apache.cxf.interceptor,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.tools.common,javax.xml.namespace,org.apache.cxf.transport.jms,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.frontend'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.invoker,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.configuration.security,org.apache.cxf.service.factory,org.apache.cxf.binding,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.jaxb,org.apache.cxf.service,javax.wsdl,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.databinding.source,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.cxf,org.apache.cxf.wsdl11,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.binding.soap'/>
    <p n='uses' v='javax.xml.ws.soap,org.apache.cxf.common.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.jaxws.support,javax.jws.soap,org.apache.cxf.jaxws.binding,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.object.spring'/>
    <p n='uses' v='org.apache.cxf.binding.object,org.springframework.beans.factory.xml,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.builder.primitive'/>
    <p n='uses' v='org.apache.neethi,javax.xml.namespace,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.common.i18n,org.w3c.dom,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bindings.xformat'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.coloc.feature'/>
    <p n='uses' v='org.apache.cxf.endpoint,org.apache.cxf,org.apache.cxf.binding.coloc,org.apache.cxf.feature,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.mtom'/>
    <p n='uses' v='javax.xml.namespace,javax.activation,org.apache.cxf.aegis,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.policy'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.ws.rm,javax.xml.bind.annotation,org.apache.cxf.interceptor,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.rm.soap,org.apache.cxf.ws.policy,org.apache.cxf,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.jaxb,javax.wsdl.extensions.mime,javax.xml.ws,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,javax.wsdl,org.apache.ws.commons.schema,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.common.xmlschema,javax.wsdl.extensions,javax.jws.soap,javax.wsdl.extensions.http,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.misc.processor'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,org.apache.cxf.tools.validator.internal,javax.xml.namespace,org.apache.cxf.common.i18n,com.sun.tools.xjc.api,javax.wsdl.factory,org.apache.cxf.tools.common,javax.wsdl.extensions.schema,org.apache.cxf.tools.wsdlto.frontend.jaxws.customization,org.apache.cxf.wsdl,javax.wsdl,org.apache.cxf.tools.misc.processor.address,org.xml.sax,javax.wsdl.xml,org.apache.cxf.tools.common.dom,org.w3c.dom,org.apache.cxf.tools.util,javax.wsdl.extensions,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http'/>
    <p n='uses' v='org.apache.cxf.service.model'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.basic'/>
    <p n='uses' v='javax.xml.namespace,org.apache.cxf.aegis,org.apache.cxf.aegis.util,org.apache.cxf.common.util,org.apache.cxf.aegis.type.mtom,javax.xml.stream,org.w3c.dom,org.apache.commons.logging,org.jdom,org.apache.cxf.interceptor,org.apache.cxf.common.xmlschema,org.apache.cxf.common.classloader,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,org.apache.cxf.aegis.util.date,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.jms'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.message,javax.naming,org.apache.cxf.common.util,org.apache.cxf.ws.addressing,org.apache.cxf.workqueue,org.apache.cxf.wsdl,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.io,org.apache.cxf,javax.xml.bind,javax.jms,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.bus.extension'/>
    <p n='uses' v='org.apache.cxf.buslifecycle,org.apache.cxf.bus,org.xml.sax,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.transport,org.apache.cxf.configuration,org.apache.cxf.binding,javax.xml.parsers,org.apache.cxf.resource,org.apache.cxf.common.injection'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.policy.attachment.external'/>
    <p n='uses' v='org.apache.cxf.ws.policy.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.extension,javax.xml.xpath,org.apache.neethi,org.springframework.core.io,org.apache.cxf.ws.policy,org.apache.cxf.resource,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.configuration.spring,javax.xml.bind,org.apache.cxf.ws.policy.attachment.reference,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.util'/>
    <p n='uses' v='javax.wsdl.extensions.soap,org.apache.cxf.common.logging,org.apache.cxf.tools.common.extensions.soap,javax.xml.namespace,org.apache.cxf.common.i18n,javax.wsdl.extensions.soap12,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf.wsdl,javax.xml.stream,javax.wsdl,org.xml.sax,org.w3c.dom,javax.wsdl.extensions,javax.jws.soap,javax.jws,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.wsdlto.frontend.jaxws.generators'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.tools.common.model,org.w3c.dom,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.wsdlto.core,org.apache.cxf.tools.common,org.apache.cxf.common.util,javax.jws,org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.js.rhino'/>
    <p n='uses' v='org.apache.xmlbeans,org.apache.cxf.common.logging,org.mozilla.javascript,javax.xml.namespace,org.w3c.dom,javax.xml.transform.dom,org.apache.cxf,javax.xml.ws,javax.xml.transform.stream'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.management.jmx.export.runtime'/>
    <p n='uses' v='org.apache.cxf.management.annotation,javax.management,javax.management.modelmbean'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.handler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.cxf.jaxws.javaee,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.jaxws.context,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.message,org.apache.cxf.common.util,org.apache.cxf.resource,javax.xml.ws,javax.xml.stream,javax.xml.ws.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.xml.soap,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.common.injection,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.injection'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.annotation,org.apache.cxf.common.annotation,org.apache.cxf.resource'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.type.collection'/>
    <p n='uses' v='org.apache.cxf.aegis.type.basic,org.apache.cxf.aegis.util,org.apache.cxf.aegis.xml,org.apache.cxf.aegis.type,javax.xml.namespace,org.jdom,org.apache.cxf.aegis'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.http.policy'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.ws.policy,org.apache.cxf.ws.policy.builder.jaxb,org.apache.cxf.transports.http.configuration,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.servlet'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.springframework.context.support,org.apache.cxf.bus.spring,org.apache.cxf.message,javax.servlet,javax.naming,org.xmlsoap.schemas.wsdl.http,org.springframework.core.io,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,org.apache.cxf.transport.http,org.apache.cxf.transports.http,org.springframework.context,org.apache.cxf.service.model,org.apache.cxf.transport,org.springframework.beans.factory.support,org.apache.cxf.common.classloader,org.springframework.beans.factory.xml,javax.annotation,org.apache.cxf'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.logging'/>
    <p n='uses' v='org.apache.log4j,org.apache.log4j.spi,org.apache.cxf.common.util,org.apache.cxf.common.i18n'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.catalog'/>
    <p n='uses' v='org.xml.sax,javax.wsdl.xml,org.apache.cxf.common.logging,org.apache.ws.commons.schema,org.apache.ws.commons.schema.resolver,org.apache.xml.resolver.helpers,javax.annotation,org.apache.xml.resolver,org.apache.cxf,org.apache.cxf.resource,org.apache.xml.resolver.tools,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.ws.http,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.frontend,org.apache.cxf.jaxws.binding.soap,javax.xml.transform,org.apache.cxf.service.factory,org.apache.cxf.jaxws.support,javax.xml.ws.spi,org.apache.cxf.resource,org.apache.cxf.jaxb,org.apache.cxf.workqueue,org.apache.cxf.jaxws.handler.logical,javax.xml.ws,javax.xml.ws.soap,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.jaxws.handler.soap,org.apache.cxf.jaxws.interceptors,org.apache.cxf.databinding.source,org.apache.cxf.tools.util,org.apache.cxf.jaxws.handler,org.apache.cxf.common.injection,javax.xml.bind,org.apache.cxf.wsdl11,org.apache.cxf.common.logging,org.apache.cxf.jaxws.context,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.wsdl,javax.activation,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.common.util.factory,javax.xml.soap,org.apache.cxf.configuration,org.apache.cxf.binding.soap,javax.jws,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transport.local'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.message,javax.annotation,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.ws.addressing,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.java2wsdl.generator.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.cxf.tools.common.model,javax.xml.namespace,org.apache.cxf.tools.java2wsdl.generator.wsdl11.model,org.apache.cxf.service.model,org.apache.cxf.tools.util,org.apache.cxf.tools.java2wsdl.generator,org.apache.cxf.tools.java2wsdl.processor.internal.jaxws,javax.wsdl.factory,org.apache.cxf.tools.common,org.apache.cxf.common.util,org.apache.cxf,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis'/>
    <p n='uses' v='org.apache.cxf.aegis.type,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.spring'/>
    <p n='uses' v='org.apache.cxf.binding.soap,org.springframework.beans.factory.xml,org.w3c.dom,org.apache.cxf.configuration.spring'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.rm.soap'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.ws.rm.persistence,org.apache.cxf.phase,org.apache.neethi,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.policy,org.apache.cxf.ws.rm.policy,org.apache.cxf.ws.addressing,org.apache.cxf.service,org.apache.cxf.endpoint,org.apache.cxf.ws.rm,org.apache.cxf.ws.addressing.soap,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.xml.soap,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf.ws.policy.builder.jaxb,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xmlsoap.schemas.wsdl.http'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.common.i18n,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.binding.soap.interceptor'/>
    <p n='uses' v='org.apache.cxf.headers,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,javax.xml.parsers,org.apache.cxf.service,javax.xml.stream,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,javax.xml.xpath,org.apache.cxf.interceptor,org.apache.cxf.transport,org.apache.cxf.binding.soap,org.apache.cxf.io,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.jdom'/>
    <p n='uses' v='javax.xml.namespace,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing'/>
    <p n='uses' v='org.apache.cxf.ws.addressing.policy,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.common.util,org.apache.cxf.ws.policy,javax.xml.ws,org.apache.cxf.workqueue,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.cxf.endpoint,org.apache.cxf.ws.addressing.v200408,org.apache.cxf.ws.addressing.soap,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.wsdl.extensions,javax.jws,org.apache.cxf,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.aegis.util.stax'/>
    <p n='uses' v='org.apache.cxf.aegis.util,javax.xml.namespace,org.w3c.dom,org.jdom,org.apache.cxf.staxutils,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.service'/>
    <p n='uses' v='org.apache.cxf.common.xmlschema,org.apache.cxf.configuration,org.apache.cxf.databinding,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf,org.apache.cxf.workqueue,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.wsdl'/>
    <p n='uses' v='org.w3c.dom.ls,org.apache.cxf.common.logging,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.apache.cxf.common.i18n,javax.xml.transform,javax.wsdl.factory,javax.xml.validation,org.apache.cxf.common.util,org.apache.cxf.resource,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.stream,javax.wsdl,org.xml.sax,org.apache.cxf.endpoint,org.apache.ws.commons.schema,org.w3c.dom,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.transport,javax.xml.transform.dom,javax.wsdl.extensions,org.apache.cxf,org.apache.cxf.ws.addressing.wsdl,javax.xml.bind,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.databinding.stax'/>
    <p n='uses' v='org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.feature,org.apache.cxf.service.model,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.binding,javax.xml.validation,org.apache.cxf,org.apache.cxf.staxutils,org.apache.cxf.service,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.tools.common.toolspec.parser'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.cxf.common.logging,javax.xml.parsers,org.apache.cxf.tools.common.toolspec,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.common.util.factory'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.jaxws.spi'/>
    <p n='uses' v='org.apache.cxf.common.logging,org.apache.cxf.jaxws,javax.xml.namespace,org.apache.cxf,org.apache.cxf.common.i18n,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.io'/>
    <p n='uses' v='org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.ws.addressing.wsdl'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind.annotation.adapters,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.http.configuration'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='2.0.5.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ctc.wstx.sax
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=1.6.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=1.6.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.codemodel.writer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.codemodel.writer
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.api.impl.s2j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.api.impl.s2j
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.model
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.outline)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.outline
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.tools.xjc.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.tools.xjc.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.marshaller)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.marshaller
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.runtime
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.bind.v2.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.bind.v2.util
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.xsom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.xsom
  </require>
  <require extend='false' filter='(&amp;(package=javanet.staxutils)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javanet.staxutils
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio
  </require>
  <require extend='false' filter='(&amp;(package=javax.imageio.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.imageio.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.x500)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.x500
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.mime)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.mime ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12 ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang.builder)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.lang.builder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.basic)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.basic ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.collection)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.collection ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.java5)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.java5 ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.mtom)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.mtom ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.type.xml)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.type.xml ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.date)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.date ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.jdom)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.jdom ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.util.stax)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.util.stax ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.jdom)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.jdom ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.xml.stax)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.xml.stax ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.feature)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.feature ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.coloc.spring)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.coloc.spring ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.interceptor)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.interceptor ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.http.strategy)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.http.strategy ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.object.spring)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.object.spring ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.saaj)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.saaj ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.spring)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.spring ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.wsdl11)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.wsdl11 ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.interceptor)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.interceptor ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.xml.wsdl11)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.xml.wsdl11 ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bindings.xformat)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bindings.xformat ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.extension)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.extension ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.buslifecycle)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.buslifecycle ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.clustering.spring)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.clustering.spring ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.annotation)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.annotation ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.classloader)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.classloader ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.commands)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.commands ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.injection)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.injection ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util.factory)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util.factory ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.xmlschema)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.xmlschema ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.jsse.spring)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.jsse.spring ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.security)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.security ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.source)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.source ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding.stax)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding.stax ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint.dynamic)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint.dynamic ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.event)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.event ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.extension)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.extension ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend.spring)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend.spring ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.attachment)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.attachment ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxb.io)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxb.io ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.http)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.http ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.binding.soap)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.binding.soap ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.context)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.context ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.logical)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.logical ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.handler.soap)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.handler.soap ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.interceptors)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.interceptors ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.javaee)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.javaee ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spi)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spi ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.spring)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.spring ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.js.rhino)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.js.rhino ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.annotation)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.annotation ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.counters)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.counters ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.interceptor)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.interceptor ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.jmx.export.runtime)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.jmx.export.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.management.utils)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.management.utils ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security.transport)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security.transport ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.simple)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.simple ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.test)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.test ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.dom)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.dom ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.extensions.soap)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.extensions.soap
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.model)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.model ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.common.toolspec.parser)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.common.toolspec.parser
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.generator.wsdl11.model)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.generator.wsdl11.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.java2wsdl.processor.internal.jaxws)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.misc.processor.address)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.misc.processor.address
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.plugin)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.plugin ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.util)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.util ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.validator.internal.model)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.validator.internal.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.core)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.core ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.databinding.jaxb)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.databinding.jaxb
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.customization)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.customization
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.generators)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.generators
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.mapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.template)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.template
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.validator)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.validator
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.policy)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.policy ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http.spring)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http.spring ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty.spring)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty.spring ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https_jetty)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https_jetty ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.spring)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.spring ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms.wsdl11)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms.wsdl11 ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.local)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.local ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.servlet)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.servlet ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http.configuration)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http_jetty.configuration)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http_jetty.configuration
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.version)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.version ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.workqueue)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.workqueue ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.policy)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.policy ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.soap)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.soap ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.spring)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.spring ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.v200408)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.v200408 ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing.wsdl)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing.wsdl ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.external)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.external
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.reference)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.reference
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.attachment.wsdl11)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.attachment.wsdl11 ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.jaxb)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.jaxb ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.primitive)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.primitive ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.builder.xml)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.builder.xml ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.mtom)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.mtom ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.selector)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.selector ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.spring)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.spring ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.util)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.util ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200409)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200409 ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.policy.v200607)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.policy.v200607 ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.feature)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.feature ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.manager)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.manager ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.persistence.jdbc)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.persistence.jdbc ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.policy)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.policy ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.soap)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.soap ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm.spring)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm.spring ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.dv)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.dv ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.xjc.ts)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.xjc.ts ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.neethi)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.neethi ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.app)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.app
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.velocity.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.velocity.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.constants)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.constants ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.extensions)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.extensions ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.resolver)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.resolver ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema.utils)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema.utils ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.components.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.components.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.message.token)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.message.token
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.ws.security.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.helpers)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.helpers ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.tools)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xml.resolver.tools ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.jra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.jra
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.input)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.input
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.output
  </require>
  <require extend='false' filter='(&amp;(package=org.jdom.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jdom.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.junit)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.junit
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.nio ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.security ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.servlet ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.thread ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.objectweb.asm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.objectweb.asm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.wiring)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.wiring ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http ;version=2.0.5.incubator
  </require>
</resource>
<resource id='org.apache.servicemix.cxf.transport.nmr/4.0.0.m1' presentationname='Apache ServiceMix CXF Transport for NMR' symbolicname='org.apache.servicemix.cxf.transport.nmr' uri='../org/apache/servicemix/cxf/org.apache.servicemix.cxf.transport.nmr/4.0-m1/org.apache.servicemix.cxf.transport.nmr-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26681
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix CXF Transport for NMR'/>
    <p n='symbolicname' v='org.apache.servicemix.cxf.transport.nmr'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxf.transport.nmr'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.servicemix.nmr.api,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.configuration,javax.annotation,javax.jws,org.apache.cxf.io,org.apache.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.transport.nmr'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.nmr
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ctc.wstx.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.client.p2p)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.client.p2p ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap.ver1_1)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.soap.ver1_1 ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.saaj)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis2.saaj
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxf.transport.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxf.transport.nmr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.cxf.transport.nmr/4.0.0' presentationname='Apache ServiceMix CXF Transport for NMR' symbolicname='org.apache.servicemix.cxf.transport.nmr' uri='../org/apache/servicemix/cxf/org.apache.servicemix.cxf.transport.nmr/4.0.0/org.apache.servicemix.cxf.transport.nmr-4.0.0.jar' version='4.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    34167
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix CXF Transport for NMR'/>
    <p n='symbolicname' v='org.apache.servicemix.cxf.transport.nmr'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxf.transport.nmr.wsdl11'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions,org.apache.cxf.transports.nmr,javax.xml.namespace,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxf.transport.nmr'/>
    <p n='uses' v='org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,javax.xml.transform,org.apache.cxf.message,javax.xml.parsers,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.service,org.apache.cxf.wsdl,org.apache.servicemix.nmr.api,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,javax.xml.transform.dom,org.apache.cxf.configuration,javax.annotation,org.apache.cxf.io,javax.jws,org.apache.cxf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.cxf.transports.nmr'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation,org.apache.cxf.wsdl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.transport.nmr'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.nmr
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ctc.wstx.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.client.p2p)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.client.p2p
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap.ver1_1)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.soap.ver1_1
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.saaj)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis2.saaj
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.io)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.io ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.nmr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxf.transport.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxf.transport.nmr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxf.transport.nmr.wsdl11)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxf.transport.nmr.wsdl11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.cxf.transport.osgi/4.0.0.m1' presentationname='Apache ServiceMix CXF Transport for OSGi' symbolicname='org.apache.servicemix.cxf.transport.osgi' uri='../org/apache/servicemix/cxf/org.apache.servicemix.cxf.transport.osgi/4.0-m1/org.apache.servicemix.cxf.transport.osgi-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    24040
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix CXF Transport for OSGi'/>
    <p n='symbolicname' v='org.apache.servicemix.cxf.transport.osgi'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.osgi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxf.transport.http_osgi'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.servlet,org.xmlsoap.schemas.wsdl.http,org.apache.cxf.common.util,org.apache.cxf.transport.https,org.apache.cxf.transport.http,org.apache.cxf.ws.addressing,org.apache.cxf.transports.http,org.apache.cxf.service.model,org.springframework.context,org.apache.cxf.transport,org.apache.cxf,org.apache.cxf.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.osgi
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ctc.wstx.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.client.p2p)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.client.p2p ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap.ver1_1)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.soap.ver1_1 ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.saaj)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis2.saaj
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxf.transport.http_osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxf.transport.http_osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xmlsoap.schemas.wsdl.http)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.xmlsoap.schemas.wsdl.http ;version=2.0.5.incubator
  </require>
</resource>
<resource id='org.apache.servicemix.cxf.transport.osgi/4.0.0' presentationname='Apache ServiceMix CXF Transport for OSGi' symbolicname='org.apache.servicemix.cxf.transport.osgi' uri='../org/apache/servicemix/cxf/org.apache.servicemix.cxf.transport.osgi/4.0.0/org.apache.servicemix.cxf.transport.osgi-4.0.0.jar' version='4.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26018
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix CXF Transport for OSGi'/>
    <p n='symbolicname' v='org.apache.servicemix.cxf.transport.osgi'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.osgi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxf.transport.http_osgi'/>
    <p n='uses' v='javax.servlet.http,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.cxf.message,javax.servlet,org.apache.cxf.common.util,org.apache.cxf.transport.https,org.apache.cxf.transport.http,org.apache.cxf.ws.addressing,org.apache.cxf.transports.http,org.apache.cxf.wsdl.http,org.apache.cxf.service.model,org.springframework.context,org.apache.cxf.transport,org.apache.cxf,org.apache.cxf.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.osgi
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ctc.wstx.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.client.p2p)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.client.p2p
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap.ver1_1)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.soap.ver1_1
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.saaj)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis2.saaj
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.util)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.util ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.security)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.security ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.https)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.https ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transports.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transports.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxf.transport.http_osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxf.transport.http_osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.cxf.binding.nmr/4.0.0.m1' presentationname='Apache ServiceMix CXF Binding for NMR' symbolicname='org.apache.servicemix.cxf.binding.nmr' uri='../org/apache/servicemix/cxf/org.apache.servicemix.cxf.binding.nmr/4.0-m1/org.apache.servicemix.cxf.binding.nmr-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28972
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix CXF Binding for NMR'/>
    <p n='symbolicname' v='org.apache.servicemix.cxf.binding.nmr'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxf.binding.nmr'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.binding,org.apache.servicemix.cxf.binding.nmr.interceptors,javax.xml.namespace,org.apache.servicemix.nmr.api,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxf.binding.nmr.interceptors'/>
    <p n='uses' v='org.apache.servicemix.cxf.binding.nmr,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.servicemix.nmr.api,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.binding.nmr'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.binding.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.binding.nmr
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ctc.wstx.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.client.p2p)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.client.p2p ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap.ver1_1)(version&gt;=1.3.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.soap.ver1_1 ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.saaj)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis2.saaj
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.0.5.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.0.5.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxf.binding.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxf.binding.nmr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxf.binding.nmr.interceptors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxf.binding.nmr.interceptors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.cxf.binding.nmr/4.0.0' presentationname='Apache ServiceMix CXF Binding for NMR' symbolicname='org.apache.servicemix.cxf.binding.nmr' uri='../org/apache/servicemix/cxf/org.apache.servicemix.cxf.binding.nmr/4.0.0/org.apache.servicemix.cxf.binding.nmr-4.0.0.jar' version='4.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    30454
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix CXF Binding for NMR'/>
    <p n='symbolicname' v='org.apache.servicemix.cxf.binding.nmr'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxf.binding.nmr'/>
    <p n='uses' v='org.apache.cxf.message,org.apache.cxf.binding,org.apache.servicemix.cxf.binding.nmr.interceptors,javax.xml.namespace,org.apache.servicemix.nmr.api,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.interceptor'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxf.binding.nmr.interceptors'/>
    <p n='uses' v='org.apache.servicemix.cxf.binding.nmr,org.apache.cxf.databinding,org.apache.cxf.endpoint,org.apache.cxf.common.logging,javax.xml.namespace,org.apache.servicemix.nmr.api,org.apache.cxf.common.i18n,org.w3c.dom,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.phase,org.apache.cxf.interceptor,org.apache.cxf.message,org.apache.cxf.service,org.apache.cxf.staxutils,javax.xml.stream,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.cxf.binding.nmr'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.binding.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.binding.nmr
  </require>
  <require extend='false' filter='(&amp;(package=com.ctc.wstx.stax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ctc.wstx.stax
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.client.p2p)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.client.p2p
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.sun.xml.messaging.saaj.soap.ver1_1)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.sun.xml.messaging.saaj.soap.ver1_1
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.axis2.saaj)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.axis2.saaj
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.logging)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.logging ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxf.binding.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxf.binding.nmr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxf.binding.nmr.interceptors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxf.binding.nmr.interceptors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.api/1.0.0.m1' presentationname='ServiceMix JBI API' symbolicname='org.apache.servicemix.jbi.api' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.api/1.0-m1/org.apache.servicemix.jbi.api-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22177
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix JBI API'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.api'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.messaging'/>
    <p n='uses' v='javax.activation,javax.xml.namespace,javax.jbi.servicedesc,javax.security.auth,javax.jbi,javax.xml.transform'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.component'/>
    <p n='uses' v='javax.jbi.messaging,javax.naming,javax.management,javax.xml.namespace,org.w3c.dom,javax.jbi.servicedesc,javax.jbi.management,javax.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.servicedesc'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.management'/>
    <p n='uses' v='javax.management,javax.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.deployer/1.0.0' presentationname='Apache ServiceMix JBI Deployer' symbolicname='org.apache.servicemix.jbi.deployer' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.deployer/1.0.0/org.apache.servicemix.jbi.deployer-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    160600
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix JBI Deployer'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.deployer'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer.utils'/>
    <p n='uses' v='org.apache.servicemix.jbi.runtime.impl.utils,javax.xml.parsers,org.w3c.dom,org.apache.commons.logging,javax.jbi.management'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer'/>
    <p n='uses' v='javax.management,javax.jbi.component,javax.jbi.management,javax.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer.impl'/>
    <p n='uses' v='org.apache.servicemix.jbi.deployer.utils,org.apache.servicemix.jbi.deployer,org.apache.servicemix.nmr.core,org.apache.servicemix.jbi.runtime.impl,javax.xml.namespace,org.osgi.framework,javax.jbi.management,javax.naming,org.apache.servicemix.nmr.api.event,javax.management.modelmbean,org.osgi.service.prefs,org.springframework.beans.factory,org.apache.servicemix.jbi.deployer.events,javax.jbi.messaging,org.apache.servicemix.jbi.deployer.handler,javax.management,javax.jbi.component,org.apache.servicemix.jbi.deployer.artifacts,org.w3c.dom,org.apache.xbean.classloader,javax.jbi.servicedesc,org.apache.commons.logging,org.springframework.jmx.export.assembler,org.apache.servicemix.jbi.runtime,org.springframework.jmx.export.metadata,org.apache.servicemix.jbi.deployer.descriptor,javax.jbi,org.springframework.osgi.util,org.springframework.jmx.export.annotation,org.springframework.osgi.context,org.osgi.util.tracker,org.springframework.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer.handler'/>
    <p n='uses' v='org.apache.servicemix.jbi.deployer.utils,org.osgi.service.url,org.apache.commons.logging,org.apache.servicemix.jbi.deployer.descriptor,org.apache.servicemix.kernel.filemonitor'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer.artifacts'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.jbi.deployer,javax.jbi.component,javax.management,org.osgi.framework,org.w3c.dom,org.apache.servicemix.nmr.api,javax.jbi.servicedesc,org.apache.commons.logging,org.apache.servicemix.nmr.core.util,org.apache.servicemix.jbi.runtime,javax.jbi.management,org.apache.servicemix.jbi.deployer.descriptor,javax.jbi,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.event,org.osgi.service.prefs,org.apache.servicemix.jbi.deployer.events'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer.task'/>
    <p n='uses' v='org.apache.servicemix.jbi.deployer,org.apache.servicemix.jbi.deployer.impl,javax.management,org.apache.tools.ant,javax.management.remote'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer.descriptor'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.service,org.xml.sax,javax.xml.namespace,org.apache.servicemix.nmr.api,org.w3c.dom,javax.xml.transform,javax.xml.validation,javax.xml.parsers,javax.xml.transform.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer.events'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.event,javax.jbi.management,javax.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.manager)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.geronimo.transaction.manager
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer.artifacts)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer.artifacts
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer.descriptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer.descriptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer.events)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer.events
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer.task)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer.task
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime.impl.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime.impl.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classloader)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classloader ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.prefs ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.annotation ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.assembler)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.assembler ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.metadata)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.metadata ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.deployer/1.0.0.m2' presentationname='Apache ServiceMix JBI Deployer' symbolicname='org.apache.servicemix.jbi.deployer' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.deployer/1.0.0-m2/org.apache.servicemix.jbi.deployer-1.0.0-m2.jar' version='1.0.0.m2'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    74103
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix JBI Deployer'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.deployer'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer'/>
    <p n='uses' v='javax.jbi.component,javax.jbi.management'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer.impl'/>
    <p n='uses' v='org.apache.servicemix.jbi.deployer,org.osgi.framework,javax.jbi.management,org.osgi.service.prefs,org.springframework.beans.factory,javax.jbi.messaging,javax.jbi.component,javax.management,org.w3c.dom,org.apache.xbean.classloader,javax.jbi.servicedesc,org.apache.commons.logging,org.apache.servicemix.jbi.runtime,javax.jbi,org.apache.servicemix.jbi.deployer.descriptor,org.springframework.osgi.util,org.springframework.osgi.context,org.osgi.util.tracker'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer.handler'/>
    <p n='uses' v='org.osgi.service.url,org.apache.servicemix.jbi.deployer.impl,org.apache.commons.logging,org.apache.servicemix.jbi.deployer.descriptor,org.apache.servicemix.kernel.filemonitor'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer.descriptor'/>
    <p n='uses' v='org.xml.sax,javax.xml.validation,javax.xml.parsers,javax.xml.namespace,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer.descriptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer.descriptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classloader)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classloader ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.prefs ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.deployer/1.0.0.m1' presentationname='ServiceMix JBI Deployer' symbolicname='org.apache.servicemix.jbi.deployer' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.deployer/1.0-m1/org.apache.servicemix.jbi.deployer-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    70317
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix JBI Deployer'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.deployer'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer'/>
    <p n='uses' v='javax.jbi.component,javax.jbi.management'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer.impl'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.jbi.deployer,javax.management,javax.jbi.component,org.osgi.framework,org.apache.xbean.classloader,org.w3c.dom,org.apache.commons.logging,javax.jbi.servicedesc,javax.jbi.management,org.apache.servicemix.jbi.deployer.descriptor,javax.jbi,org.springframework.osgi.util,org.springframework.osgi.context,org.osgi.service.prefs,org.springframework.beans.factory'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer.handler'/>
    <p n='uses' v='org.osgi.service.url,org.apache.servicemix.jbi.deployer.impl,org.apache.commons.logging,org.apache.servicemix.jbi.deployer.descriptor,org.apache.servicemix.kernel.filemonitor'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer.descriptor'/>
    <p n='uses' v='org.xml.sax,javax.xml.validation,javax.xml.parsers,javax.xml.namespace,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer.descriptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer.descriptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classloader)(version&gt;=3.3.1.r631610))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classloader ;version=3.3.1.r631610
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.prefs ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.deployer/1.0.0.m3' presentationname='Apache ServiceMix JBI Deployer' symbolicname='org.apache.servicemix.jbi.deployer' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.deployer/1.0.0-m3/org.apache.servicemix.jbi.deployer-1.0.0-m3.jar' version='1.0.0.m3'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    76227
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix JBI Deployer'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.deployer'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer'/>
    <p n='uses' v='javax.jbi.component,javax.jbi.management'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer.impl'/>
    <p n='uses' v='org.apache.servicemix.jbi.deployer,org.osgi.framework,javax.jbi.management,org.osgi.service.prefs,org.springframework.beans.factory,javax.jbi.messaging,javax.jbi.component,javax.management,org.w3c.dom,org.apache.xbean.classloader,javax.jbi.servicedesc,org.apache.commons.logging,org.apache.servicemix.jbi.runtime,javax.jbi,org.apache.servicemix.jbi.deployer.descriptor,org.springframework.osgi.util,org.springframework.osgi.context,org.osgi.util.tracker'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer.handler'/>
    <p n='uses' v='org.osgi.service.url,org.apache.servicemix.jbi.deployer.impl,org.apache.commons.logging,org.apache.servicemix.jbi.deployer.descriptor,org.apache.servicemix.kernel.filemonitor'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.deployer.descriptor'/>
    <p n='uses' v='org.xml.sax,javax.xml.validation,javax.xml.parsers,javax.xml.namespace,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer.descriptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer.descriptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classloader)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classloader ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.prefs ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.commands/1.0.0.m2' presentationname='Apache ServiceMix JBI Commands' symbolicname='org.apache.servicemix.jbi.commands' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.commands/1.0.0-m2/org.apache.servicemix.jbi.commands-1.0.0-m2.jar' version='1.0.0.m2'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17366
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix JBI Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.commands'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.commands'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.servicemix.jbi.deployer,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,javax.jbi.management,javax.jbi,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.commands)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.commands
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.commands/1.0.0' presentationname='Apache ServiceMix JBI Commands' symbolicname='org.apache.servicemix.jbi.commands' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.commands/1.0.0/org.apache.servicemix.jbi.commands-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    21710
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix JBI Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.commands'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.commands'/>
    <p n='uses' v='org.apache.servicemix.jbi.deployer,org.osgi.framework,javax.jbi.management,javax.jbi,org.apache.geronimo.gshell.clp,org.springframework.osgi.context,jline,org.apache.servicemix.kernel.gshell.core,org.apache.geronimo.gshell.io,org.apache.geronimo.gshell.console.completer'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=jline)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package jline ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.console.completer)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.console.completer
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.io)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.io ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.registry)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.registry ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.commands)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.commands
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.2.0.m2
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.commands/1.0.0.m1' presentationname='ServiceMix JBI Commands' symbolicname='org.apache.servicemix.jbi.commands' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.commands/1.0-m1/org.apache.servicemix.jbi.commands-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16508
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix JBI Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.commands'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.commands'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.servicemix.jbi.deployer,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,javax.jbi.management,javax.jbi,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.commands)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.commands
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.commands/1.0.0.m3' presentationname='Apache ServiceMix JBI Commands' symbolicname='org.apache.servicemix.jbi.commands' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.commands/1.0.0-m3/org.apache.servicemix.jbi.commands-1.0.0-m3.jar' version='1.0.0.m3'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17368
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix JBI Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.commands'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.commands'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.servicemix.jbi.deployer,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,javax.jbi.management,javax.jbi,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.commands)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.commands
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.runtime/1.0.0.m1' presentationname='ServiceMix JBI Runtime' symbolicname='org.apache.servicemix.jbi.runtime' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.runtime/1.0-m1/org.apache.servicemix.jbi.runtime-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    50526
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix JBI Runtime'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.runtime'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.runtime.impl.utils'/>
    <p n='uses' v='javax.jbi.messaging,org.xml.sax,javax.jbi.component,javax.xml.namespace,org.w3c.dom,javax.jbi.servicedesc,org.apache.commons.logging,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,javax.xml.transform.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.runtime.impl'/>
    <p n='uses' v='org.apache.servicemix.nmr.core,javax.xml.namespace,javax.jbi.management,javax.xml.transform,org.osgi.service.url,javax.naming,org.apache.servicemix.jbi.runtime.impl.utils,javax.jbi.messaging,javax.jbi.component,javax.management,javax.activation,org.apache.servicemix.nmr.api,org.w3c.dom,javax.jbi.servicedesc,org.apache.commons.logging,org.apache.servicemix.jbi.runtime,javax.jbi,org.apache.servicemix.nmr.api.internal,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.runtime'/>
    <p n='uses' v='javax.naming,org.apache.servicemix.nmr.api.service,javax.management,javax.jbi.component'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime.impl.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime.impl.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.runtime/1.0.0.m2' presentationname='Apache ServiceMix JBI Runtime' symbolicname='org.apache.servicemix.jbi.runtime' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.runtime/1.0.0-m2/org.apache.servicemix.jbi.runtime-1.0.0-m2.jar' version='1.0.0.m2'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    50414
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix JBI Runtime'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.runtime'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.runtime.impl.utils'/>
    <p n='uses' v='javax.jbi.messaging,org.xml.sax,javax.jbi.component,javax.xml.namespace,org.w3c.dom,javax.jbi.servicedesc,org.apache.commons.logging,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,javax.xml.transform.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.runtime.impl'/>
    <p n='uses' v='org.apache.servicemix.nmr.core,javax.xml.namespace,javax.jbi.management,org.apache.servicemix.document,javax.xml.transform,javax.naming,org.apache.servicemix.jbi.runtime.impl.utils,javax.jbi.messaging,javax.jbi.component,javax.management,javax.activation,org.apache.servicemix.nmr.api,org.w3c.dom,javax.jbi.servicedesc,org.apache.commons.logging,org.apache.servicemix.jbi.runtime,javax.jbi,org.apache.servicemix.nmr.api.internal,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.runtime'/>
    <p n='uses' v='javax.naming,org.apache.servicemix.nmr.api.service,javax.management,javax.jbi.component'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.document)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.document
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime.impl.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime.impl.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.runtime/1.0.0' presentationname='Apache ServiceMix JBI Runtime' symbolicname='org.apache.servicemix.jbi.runtime' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.runtime/1.0.0/org.apache.servicemix.jbi.runtime-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    54469
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix JBI Runtime'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.runtime'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.runtime.impl.utils'/>
    <p n='uses' v='javax.jbi.messaging,org.xml.sax,javax.jbi.component,javax.xml.namespace,org.w3c.dom,javax.jbi.servicedesc,org.apache.commons.logging,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,javax.xml.transform.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.runtime.impl'/>
    <p n='uses' v='org.apache.servicemix.nmr.core,javax.xml.namespace,javax.jbi.management,org.apache.servicemix.document,javax.xml.transform,javax.naming,javax.wsdl.factory,org.apache.servicemix.jbi.runtime.impl.utils,javax.wsdl,javax.jbi.messaging,org.apache.servicemix.nmr.api.service,javax.wsdl.xml,javax.jbi.component,javax.management,javax.activation,org.w3c.dom,org.apache.servicemix.nmr.api,org.apache.commons.logging,javax.jbi.servicedesc,org.apache.servicemix.jbi.runtime,javax.jbi,org.apache.servicemix.nmr.api.internal,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.runtime'/>
    <p n='uses' v='javax.naming,org.apache.servicemix.nmr.api.service,javax.management,javax.jbi.component'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.document)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.document
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime.impl.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime.impl.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.runtime/1.0.0.m3' presentationname='Apache ServiceMix JBI Runtime' symbolicname='org.apache.servicemix.jbi.runtime' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.runtime/1.0.0-m3/org.apache.servicemix.jbi.runtime-1.0.0-m3.jar' version='1.0.0.m3'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    50415
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix JBI Runtime'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.runtime'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.runtime.impl.utils'/>
    <p n='uses' v='javax.jbi.messaging,org.xml.sax,javax.jbi.component,javax.xml.namespace,org.w3c.dom,javax.jbi.servicedesc,org.apache.commons.logging,javax.xml.transform,javax.xml.transform.dom,javax.xml.parsers,javax.xml.transform.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.runtime.impl'/>
    <p n='uses' v='org.apache.servicemix.nmr.core,javax.xml.namespace,javax.jbi.management,org.apache.servicemix.document,javax.xml.transform,javax.naming,org.apache.servicemix.jbi.runtime.impl.utils,javax.jbi.messaging,javax.jbi.component,javax.management,javax.activation,org.apache.servicemix.nmr.api,org.w3c.dom,javax.jbi.servicedesc,org.apache.commons.logging,org.apache.servicemix.jbi.runtime,javax.jbi,org.apache.servicemix.nmr.api.internal,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.runtime'/>
    <p n='uses' v='javax.naming,org.apache.servicemix.nmr.api.service,javax.management,javax.jbi.component'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.document)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.document
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime.impl.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime.impl.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.cluster.config/1.0.0' presentationname='Apache ServiceMix JBI Clustering Config' symbolicname='org.apache.servicemix.jbi.cluster.config' uri='../org/apache/servicemix/jbi/cluster/org.apache.servicemix.jbi.cluster.config/1.0.0/org.apache.servicemix.jbi.cluster.config-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    9910
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix JBI Clustering Config'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.cluster.config'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.cluster.engine)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.cluster.engine
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.cluster.requestor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.cluster.requestor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.cluster.engine/1.0.0' presentationname='Apache ServiceMix JBI Clustering Engine' symbolicname='org.apache.servicemix.jbi.cluster.engine' uri='../org/apache/servicemix/jbi/cluster/org.apache.servicemix.jbi.cluster.engine/1.0.0/org.apache.servicemix.jbi.cluster.engine-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    24928
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix JBI Clustering Engine'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.cluster.engine'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.cluster.engine'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.core,org.apache.servicemix.jbi.runtime.impl,javax.xml.namespace,org.osgi.framework,org.apache.servicemix.jbi.cluster.requestor,org.apache.servicemix.nmr.api,javax.jbi.servicedesc,org.apache.commons.logging,org.apache.servicemix.nmr.core.util,org.springframework.osgi.context,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.event,javax.transaction,org.springframework.beans.factory,javax.jms'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.cluster.engine)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.cluster.engine
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.cluster.requestor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.cluster.requestor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.util
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.2.0.m2
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.cluster.requestor/1.0.0' presentationname='Apache ServiceMix JBI Clustering Requestor' symbolicname='org.apache.servicemix.jbi.cluster.requestor' uri='../org/apache/servicemix/jbi/cluster/org.apache.servicemix.jbi.cluster.requestor/1.0.0/org.apache.servicemix.jbi.cluster.requestor-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    37591
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix JBI Clustering Requestor'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.cluster.requestor'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.cluster.requestor'/>
    <p n='uses' v='org.springframework.scheduling,org.springframework.jms.listener,org.apache.activemq.pool,org.springframework.jms,org.springframework.jms.support,org.apache.commons.logging,javax.transaction.xa,org.springframework.context,org.apache.activemq,org.springframework.jms.support.destination,org.springframework.core.task,org.springframework.util,javax.transaction,javax.jms'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=5.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.pool)(version&gt;=5.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.pool ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.cluster.requestor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.cluster.requestor
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.task)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.task ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.listener)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.listener ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jms.support.destination)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jms.support.destination
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.scheduling)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.scheduling ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.osgi/1.0.0.m2' presentationname='Apache ServiceMix JBI OSGi' symbolicname='org.apache.servicemix.jbi.osgi' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.osgi/1.0.0-m2/org.apache.servicemix.jbi.osgi-1.0.0-m2.jar' version='1.0.0.m2'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13039
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix JBI OSGi'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.osgi'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.osgi'/>
    <p n='uses' v='org.springframework.osgi.context,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.event,org.osgi.framework,org.w3c.dom,org.apache.servicemix.nmr.api,org.apache.servicemix.nmr.core.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.document)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.document
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.util
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.osgi/1.0.0' presentationname='Apache ServiceMix JBI OSGi' symbolicname='org.apache.servicemix.jbi.osgi' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.osgi/1.0.0/org.apache.servicemix.jbi.osgi-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13869
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix JBI OSGi'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.osgi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.osgi'/>
    <p n='uses' v='org.osgi.framework,org.apache.servicemix.nmr.api,org.w3c.dom,org.apache.commons.logging,org.apache.servicemix.nmr.core.util,org.springframework.osgi.context,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.event,org.springframework.beans.factory'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.manager)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.geronimo.transaction.manager
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.document)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.document
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=[1.3.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.osgi/1.0.0.m3' presentationname='Apache ServiceMix JBI OSGi' symbolicname='org.apache.servicemix.jbi.osgi' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.osgi/1.0.0-m3/org.apache.servicemix.jbi.osgi-1.0.0-m3.jar' version='1.0.0.m3'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13076
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix JBI OSGi'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.osgi'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.osgi'/>
    <p n='uses' v='org.springframework.osgi.context,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.event,org.osgi.framework,org.w3c.dom,org.apache.servicemix.nmr.api,org.apache.servicemix.nmr.core.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.document)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.document
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.util
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=[1.3.0,2.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.osgi/1.0.0.m1' presentationname='ServiceMix JBI OSGi' symbolicname='org.apache.servicemix.jbi.osgi' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.osgi/1.0-m1/org.apache.servicemix.jbi.osgi-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12878
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix JBI OSGi'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.osgi'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.osgi'/>
    <p n='uses' v='org.springframework.osgi.context,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.event,org.osgi.framework,org.w3c.dom,org.apache.servicemix.nmr.api,org.apache.servicemix.nmr.core.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.runtime.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.runtime.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.util
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.management/1.0.0.m3' presentationname='Apache ServiceMix JBI Management' symbolicname='org.apache.servicemix.jbi.management' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.management/1.0.0-m3/org.apache.servicemix.jbi.management-1.0.0-m3.jar' version='1.0.0.m3'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19713
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix JBI Management'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.management'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.management'/>
    <p n='uses' v='org.apache.servicemix.jbi.deployer,javax.management,org.apache.commons.logging,org.springframework.jmx.export.assembler,javax.jbi.management,javax.jbi,org.springframework.jmx.export.metadata,org.springframework.jmx.export.annotation,javax.management.modelmbean,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.management)(version&gt;=1.0.0.m3))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.management ;version=1.0.0.m3
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.annotation ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.assembler)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.assembler ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.metadata)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.metadata ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.management/1.0.0.m2' presentationname='Apache ServiceMix JBI Management' symbolicname='org.apache.servicemix.jbi.management' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.management/1.0.0-m2/org.apache.servicemix.jbi.management-1.0.0-m2.jar' version='1.0.0.m2'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19714
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix JBI Management'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.management'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.management'/>
    <p n='uses' v='org.apache.servicemix.jbi.deployer,javax.management,org.apache.commons.logging,org.springframework.jmx.export.assembler,javax.jbi.management,javax.jbi,org.springframework.jmx.export.metadata,org.springframework.jmx.export.annotation,javax.management.modelmbean,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.management)(version&gt;=1.0.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.management ;version=1.0.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.annotation ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.assembler)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.assembler ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.metadata)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.metadata ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.jbi.management/1.0.0.m1' presentationname='ServiceMix JBI Management' symbolicname='org.apache.servicemix.jbi.management' uri='../org/apache/servicemix/jbi/org.apache.servicemix.jbi.management/1.0-m1/org.apache.servicemix.jbi.management-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19403
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix JBI Management'/>
    <p n='symbolicname' v='org.apache.servicemix.jbi.management'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.management'/>
    <p n='uses' v='org.apache.servicemix.jbi.deployer,javax.management,org.apache.commons.logging,org.springframework.jmx.export.assembler,javax.jbi.management,javax.jbi,org.springframework.jmx.export.metadata,org.springframework.jmx.export.annotation,javax.management.modelmbean,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.deployer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.management)(version&gt;=1.0.0.m1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.management ;version=1.0.0.m1
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.annotation ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.assembler)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.assembler ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.metadata)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.metadata ;version=2.5.0
  </require>
</resource>
<resource id='servicemix-eip/2009.1.0' presentationname='ServiceMix :: EIP' symbolicname='servicemix-eip' uri='../org/apache/servicemix/servicemix-eip/2009.01/servicemix-eip-2009.01.jar' version='2009.1.0'>
  <description>
    EIP Service Engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    114485
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: EIP'/>
    <p n='symbolicname' v='servicemix-eip'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.eip.support.resequence'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.executors,javax.jbi.component,org.apache.commons.logging,javax.jbi.management,org.apache.servicemix.jbi.transformer,org.apache.servicemix.common.util,org.apache.servicemix.eip,org.apache.servicemix.eip.support'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.eip.patterns'/>
    <p n='uses' v='org.apache.servicemix.jbi.helper,javax.xml.namespace,org.apache.servicemix.jbi.transformer,javax.jbi.management,org.apache.servicemix.expression,javax.xml.transform,javax.xml.parsers,org.apache.servicemix.common,javax.wsdl,org.apache.servicemix.eip.support.resequence,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.apache.servicemix.timers,org.apache.servicemix.executors,javax.jbi.component,org.w3c.dom,org.apache.commons.logging,org.apache.servicemix.store,javax.xml.xpath,org.apache.servicemix.common.locks,javax.xml.transform.dom,org.apache.servicemix.common.util,org.apache.servicemix.eip,org.apache.servicemix.eip.support,org.apache.servicemix.jbi.exception'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.eip'/>
    <p n='uses' v='javax.wsdl,javax.jbi.messaging,org.apache.servicemix.timers,javax.wsdl.xml,javax.jbi.component,javax.activation,javax.xml.namespace,org.w3c.dom,javax.jbi.servicedesc,org.apache.servicemix.store,javax.jbi,org.apache.servicemix.common.locks,javax.wsdl.factory,org.springframework.core.io,org.apache.servicemix.common.endpoints,org.apache.servicemix.common,org.apache.servicemix.store.memory,org.apache.servicemix.timers.impl,org.apache.servicemix.eip.support,org.apache.servicemix.common.locks.impl'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.eip'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.eip.support'/>
    <p n='uses' v='javax.xml.namespace,javax.jbi.management,org.apache.servicemix.expression,javax.xml.transform,org.springframework.core.io,org.apache.servicemix.store.memory,org.springframework.beans.factory,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.apache.servicemix.timers,javax.jbi.component,javax.activation,org.apache.commons.logging,javax.jbi.servicedesc,org.apache.servicemix.store,javax.xml.xpath,org.apache.servicemix.common.locks,org.apache.servicemix.common.util,org.apache.servicemix.eip'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.eip.packaging'/>
    <p n='uses' v='org.apache.servicemix.eip.patterns,org.apache.servicemix.eip,javax.xml.namespace,org.apache.servicemix.common,org.apache.servicemix.common.packaging,org.apache.servicemix.common.xbean,org.apache.servicemix.eip.support'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.eip)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.eip
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks.impl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks.impl ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.packaging)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.packaging ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.xbean)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.xbean ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.eip)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.eip ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.eip.packaging)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.eip.packaging ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.eip.patterns)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.eip.patterns ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.eip.support)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.eip.support ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.eip.support.resequence)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.eip.support.resequence
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.exception)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.exception
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.helper)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.helper
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.transformer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.transformer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store.memory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store.memory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.timers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.timers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.timers.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.timers.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='servicemix-eip/2008.1.0' presentationname='ServiceMix :: EIP' symbolicname='servicemix-eip' uri='../org/apache/servicemix/servicemix-eip/2008.01/servicemix-eip-2008.01.jar' version='2008.1.0'>
  <description>
    EIP Service Engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    97504
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: EIP'/>
    <p n='symbolicname' v='servicemix-eip'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.eip.support.resequence'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.executors,javax.jbi.component,org.apache.commons.logging,javax.jbi.management,org.apache.servicemix.jbi.transformer,org.apache.servicemix.common.util,org.apache.servicemix.eip,org.apache.servicemix.eip.support'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.eip.patterns'/>
    <p n='uses' v='org.apache.servicemix.jbi.helper,javax.xml.namespace,org.apache.servicemix.jbi.transformer,javax.jbi.management,org.apache.servicemix.expression,javax.xml.transform,javax.xml.parsers,org.apache.servicemix.common,javax.wsdl,org.apache.servicemix.eip.support.resequence,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.apache.servicemix.timers,org.apache.servicemix.executors,javax.jbi.component,org.w3c.dom,org.apache.commons.logging,org.apache.servicemix.store,javax.xml.xpath,org.apache.servicemix.common.locks,javax.xml.transform.dom,org.apache.servicemix.common.util,org.apache.servicemix.eip,org.apache.servicemix.eip.support,org.apache.servicemix.jbi.exception'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.eip'/>
    <p n='uses' v='javax.wsdl,javax.jbi.messaging,org.apache.servicemix.timers,javax.wsdl.xml,javax.jbi.component,javax.activation,javax.xml.namespace,org.w3c.dom,javax.jbi.servicedesc,org.apache.servicemix.store,javax.jbi,org.apache.servicemix.common.locks,javax.wsdl.factory,org.springframework.core.io,org.apache.servicemix.common.endpoints,org.apache.servicemix.common,org.apache.servicemix.store.memory,org.apache.servicemix.timers.impl,org.apache.servicemix.eip.support,org.apache.servicemix.common.locks.impl'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.eip'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.eip.support'/>
    <p n='uses' v='javax.xml.namespace,javax.jbi.management,org.apache.servicemix.expression,javax.xml.transform,org.springframework.core.io,org.apache.servicemix.store.memory,org.springframework.beans.factory,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.apache.servicemix.timers,javax.jbi.component,javax.activation,org.apache.commons.logging,javax.jbi.servicedesc,org.apache.servicemix.store,org.apache.servicemix.common.locks,org.apache.servicemix.common.util,org.apache.servicemix.eip'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.eip.packaging'/>
    <p n='uses' v='org.apache.servicemix.eip.patterns,org.apache.servicemix.eip,javax.xml.namespace,org.apache.servicemix.common,org.apache.servicemix.common.packaging,org.apache.servicemix.common.xbean,org.apache.servicemix.eip.support'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.eip)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.eip
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks.impl)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks.impl ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.packaging)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.packaging ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.xbean)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.xbean ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.eip)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.eip ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.eip.packaging)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.eip.packaging ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.eip.patterns)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.eip.patterns ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.eip.support)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.eip.support ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.eip.support.resequence)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.eip.support.resequence
    
    
    
    
    
    
    
    
    
    
    
     ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.exception)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.exception
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.helper)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.helper
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.transformer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.transformer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store.memory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store.memory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.timers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.timers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.timers.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.timers.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='servicemix-bean/2009.1.0' presentationname='ServiceMix :: Bean' symbolicname='servicemix-bean' uri='../org/apache/servicemix/servicemix-bean/2009.01/servicemix-bean-2009.01.jar' version='2009.1.0'>
  <description>
    A Bean component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    76896
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Bean'/>
    <p n='symbolicname' v='servicemix-bean'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.bean.pojos'/>
    <p n='uses' v='org.apache.servicemix.jbi.listener,org.apache.commons.logging,org.apache.servicemix.bean.support,javax.xml.transform.dom,org.w3c.dom,javax.xml.namespace,javax.activation,org.apache.servicemix.common.util,javax.xml.transform,javax.jbi.servicedesc,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.bean'/>
    <p n='uses' v='org.apache.servicemix.jbi.listener,javax.annotation,org.apache.commons.jexl,javax.jbi,org.aopalliance.intercept,org.apache.servicemix.bean.support,org.springframework.beans,javax.jbi.component,org.apache.servicemix.common,javax.management,javax.xml.namespace,org.apache.servicemix.common.util,javax.jbi.management,javax.naming,org.springframework.util,org.springframework.context,org.w3c.dom,javax.jbi.servicedesc,org.apache.servicemix.expression,javax.jbi.messaging,org.apache.servicemix.common.endpoints'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.bean.support'/>
    <p n='uses' v='org.apache.servicemix.jbi.listener,javax.annotation,org.apache.commons.logging,org.aopalliance.intercept,javax.jbi.component,javax.management,javax.xml.namespace,org.apache.servicemix.jbi.marshaler,org.apache.servicemix.common.util,org.apache.servicemix.jbi.jaxp,org.springframework.beans.factory,org.apache.servicemix.store.memory,org.springframework.util,org.apache.servicemix.jbi.transformer,org.apache.servicemix.store,org.apache.servicemix.jbi.exception,org.apache.servicemix.jbi.helper,org.apache.servicemix.bean,javax.xml.transform,javax.jbi.servicedesc,org.apache.servicemix.expression,javax.jbi.messaging'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.bean'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.bean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.bean
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.intercept)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.intercept
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jexl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.jexl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.bean)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.bean ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.bean.pojos)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.bean.pojos ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.bean.support)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.bean.support ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.exception)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.exception
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.helper)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.helper
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.marshaler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.marshaler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.transformer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.transformer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store.memory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store.memory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='servicemix-bean/2008.1.0' presentationname='ServiceMix :: Bean' symbolicname='servicemix-bean' uri='../org/apache/servicemix/servicemix-bean/2008.01/servicemix-bean-2008.01.jar' version='2008.1.0'>
  <description>
    A Bean component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    75062
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Bean'/>
    <p n='symbolicname' v='servicemix-bean'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.bean'/>
    <p n='uses' v='javax.xml.namespace,org.apache.commons.jexl,javax.jbi.management,org.apache.servicemix.expression,javax.naming,org.apache.servicemix.common,org.apache.servicemix.jbi.listener,javax.jbi.messaging,javax.jbi.component,javax.management,org.w3c.dom,javax.jbi.servicedesc,org.springframework.context,org.aopalliance.intercept,org.apache.servicemix.bean.support,javax.jbi,org.apache.servicemix.common.util,javax.annotation,org.apache.servicemix.common.endpoints,org.springframework.beans,org.springframework.util'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.bean.pojos'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.xml.namespace,javax.activation,org.w3c.dom,org.apache.commons.logging,javax.jbi.servicedesc,org.apache.servicemix.bean.support,javax.xml.transform,javax.xml.transform.dom,org.apache.servicemix.common.util,org.apache.servicemix.jbi.listener'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.bean'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.bean.support'/>
    <p n='uses' v='javax.xml.namespace,org.apache.servicemix.jbi.helper,org.apache.servicemix.jbi.transformer,org.apache.servicemix.expression,javax.xml.transform,org.springframework.beans.factory,org.apache.servicemix.jbi.listener,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.apache.servicemix.bean,javax.management,javax.jbi.component,org.apache.servicemix.jbi.marshaler,org.apache.commons.logging,javax.jbi.servicedesc,org.aopalliance.intercept,org.apache.servicemix.common.util,javax.annotation,org.springframework.util,org.apache.servicemix.jbi.exception'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.bean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.bean
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.intercept)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.intercept
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jexl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.commons.jexl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.bean)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.bean ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.bean.pojos)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.bean.pojos ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.bean.support)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.bean.support ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.exception)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.exception
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.helper)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.helper
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.marshaler)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.marshaler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.transformer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.transformer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.activemq/4.0.0.m1' presentationname='Apache ServiceMix Features :: ActiveMQ' symbolicname='org.apache.servicemix.activemq' uri='../org/apache/servicemix/activemq/org.apache.servicemix.activemq/4.0-m1/org.apache.servicemix.activemq-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    95352
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Features :: ActiveMQ'/>
    <p n='symbolicname' v='org.apache.servicemix.activemq'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.ra)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.activemq.ra
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.transport)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.transport ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.util)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.util ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.xbean)(version&gt;=5.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.xbean ;version=5.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.manager)(version&gt;=2.2.0.r634076))' multiple='false' name='package' optional='true'>
    Import package org.apache.geronimo.transaction.manager ;version=2.2.0.r634076
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.activemq.commands/4.0.0' presentationname='Apache ServiceMix Features :: ActiveMQ Commands' symbolicname='org.apache.servicemix.activemq.commands' uri='../org/apache/servicemix/activemq/org.apache.servicemix.activemq.commands/4.0.0/org.apache.servicemix.activemq.commands-4.0.0.jar' version='4.0.0'>
  <description>
    Provides the ActiveMQ commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22545
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Features :: ActiveMQ Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.activemq.commands'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.activemq'/>
    <p n='uses' v='org.apache.activemq.console.formatter,org.apache.activemq.console,org.apache.geronimo.gshell.command,org.apache.servicemix.kernel.gshell.core,org.apache.geronimo.gshell.io,org.apache.activemq.console.command,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.console)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.console ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.console.command)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.console.command ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.console.formatter)(version&gt;=5.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.console.formatter ;version=5.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.io)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.io ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.registry)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.registry ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.activemq)(version&gt;=4.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.activemq
    
    
    
    
    
    
    
    
    
    
    
     ;version=4.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core
  </require>
</resource>
<resource id='servicemix-cxf-bc/2008.1.0' presentationname='ServiceMix :: CXF Binding Component' symbolicname='servicemix-cxf-bc' uri='../org/apache/servicemix/servicemix-cxf-bc/2008.01/servicemix-cxf-bc-2008.01.jar' version='2008.1.0'>
  <description>
    A CXF Binding Component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    184846
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: CXF Binding Component'/>
    <p n='symbolicname' v='servicemix-cxf-bc'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxfbc.wsdl'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions.soap,javax.wsdl.extensions,javax.wsdl.factory,com.ibm.wsdl.extensions.soap,javax.xml.namespace,com.ibm.wsdl.extensions.soap12,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxfbc.interceptors'/>
    <p n='uses' v='org.apache.cxf.headers,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.servicemix.cxfbc,org.apache.cxf.phase,org.apache.servicemix.cxfbc.interceptors.types.quote,javax.xml.transform,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.transform.stream,javax.xml.ws,org.apache.cxf.ws.security.wss4j,javax.xml.stream,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.apache.cxf.endpoint,javax.jbi.component,javax.activation,org.apache.servicemix.soap.util,org.w3c.dom,org.apache.cxf.binding.soap.model,javax.xml.bind.annotation,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.jbi,javax.xml.transform.dom,org.apache.servicemix.common.security,org.apache.cxf.binding.soap,javax.jws.soap,org.apache.servicemix.common.util,org.apache.ws.security.handler,javax.jws,org.apache.cxf.staxutils,javax.security.auth,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.cxfbc'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxfbc'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,javax.servlet.http,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.bus.spring,javax.xml.transform,javax.servlet,javax.naming,javax.wsdl.factory,org.springframework.core.io,org.apache.servicemix.common,org.mortbay.jetty.handler,javax.xml.transform.stream,org.apache.servicemix.jbi.jaxp,javax.wsdl.xml,org.apache.cxf.endpoint,javax.jbi.component,org.apache.cxf.ws.rm,org.apache.servicemix.soap.util,javax.jbi.servicedesc,org.apache.cxf.wsdl11,com.ibm.wsdl.extensions.soap,javax.jbi.management,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.servicemix.cxfbc.interceptors,org.mortbay.jetty,org.apache.cxf.service,org.apache.cxf.wsdl,org.mortbay.util,javax.wsdl,javax.jbi.messaging,javax.activation,org.w3c.dom,org.apache.commons.logging,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.jbi,javax.xml.transform.dom,org.apache.cxf.binding.soap,org.apache.servicemix.common.security,javax.wsdl.extensions,org.apache.servicemix.common.endpoints,org.apache.cxf,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxfbc.interceptors.types.quote'/>
    <p n='uses' v='javax.xml.bind.annotation'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.cxfbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.cxfbc
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.security)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.security ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxfbc)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxfbc ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxfbc.interceptors)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxfbc.interceptors ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxfbc.interceptors.types.quote)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxfbc.interceptors.types.quote
    
    
    
    
    
    
    
    
    
    
    
     ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxfbc.wsdl)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxfbc.wsdl ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.security.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util)(version&gt;=6.1.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.util ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='servicemix-cxf-bc/2009.1.0' presentationname='ServiceMix :: CXF Binding Component' symbolicname='servicemix-cxf-bc' uri='../org/apache/servicemix/servicemix-cxf-bc/2009.01/servicemix-cxf-bc-2009.01.jar' version='2009.1.0'>
  <description>
    A CXF Binding Component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    97000
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: CXF Binding Component'/>
    <p n='symbolicname' v='servicemix-cxf-bc'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxfbc.wsdl'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions.soap,javax.wsdl.extensions,javax.wsdl.factory,com.ibm.wsdl.extensions.soap,javax.xml.namespace,com.ibm.wsdl.extensions.soap12,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxfbc.interceptors'/>
    <p n='uses' v='org.apache.cxf.headers,javax.xml.namespace,org.apache.cxf.common.i18n,org.apache.servicemix.cxfbc,org.apache.cxf.phase,javax.xml.transform,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,javax.xml.transform.stream,org.apache.cxf.ws.security.wss4j,javax.xml.stream,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.apache.cxf.endpoint,javax.jbi.component,javax.activation,org.apache.servicemix.soap.util,org.w3c.dom,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,javax.jbi,javax.xml.transform.dom,org.apache.servicemix.common.security,org.apache.cxf.binding.soap,org.apache.servicemix.common.util,org.apache.ws.security.handler,org.apache.cxf.staxutils,javax.security.auth,org.apache.ws.security,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.cxfbc'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxfbc'/>
    <p n='uses' v='org.apache.cxf.transport.http_jetty,javax.servlet.http,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.cxf.service.invoker,org.apache.cxf.common.i18n,org.apache.cxf.bus.spring,javax.xml.transform,javax.servlet,javax.naming,javax.wsdl.factory,org.springframework.core.io,javax.xml.parsers,org.apache.servicemix.common,org.mortbay.jetty.handler,javax.xml.transform.stream,org.apache.servicemix.jbi.jaxp,javax.wsdl.xml,org.apache.cxf.endpoint,javax.jbi.component,org.apache.cxf.ws.rm,org.apache.servicemix.soap.util,org.apache.cxf.transport.jms,javax.jbi.servicedesc,org.apache.cxf.wsdl11,com.ibm.wsdl.extensions.soap,org.apache.cxf.catalog,javax.jbi.management,org.apache.cxf.feature,org.apache.cxf.phase,org.apache.cxf.attachment,org.apache.cxf.message,org.apache.cxf.binding,org.apache.cxf.binding.soap.interceptor,org.apache.cxf.ws.addressing,org.apache.servicemix.cxfbc.interceptors,org.mortbay.jetty,javax.transaction,org.apache.cxf.service,org.apache.cxf.wsdl,org.mortbay.util,javax.wsdl,javax.jbi.messaging,org.xml.sax,javax.activation,org.w3c.dom,org.apache.commons.logging,org.apache.cxf.binding.soap.model,org.apache.cxf.service.model,org.apache.cxf.interceptor,org.apache.cxf.transport,javax.jbi,javax.xml.transform.dom,org.springframework.transaction,org.apache.servicemix.common.security,org.apache.cxf.binding.soap,javax.wsdl.extensions,org.apache.servicemix.common.endpoints,org.apache.cxf,org.apache.cxf.continuations,org.apache.cxf.helpers'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.cxf.cxf-bundle)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.cxf.cxf-bundle; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.cxfbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.cxfbc
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.interceptor)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.interceptor ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding.soap.model)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding.soap.model ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.catalog)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.catalog ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.common.i18n)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.common.i18n ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.continuations)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.continuations ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.feature)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.feature ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.headers)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.headers ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.helpers)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.helpers ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.invoker)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.invoker ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.staxutils)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.staxutils ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.http_jetty)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.http_jetty ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jms)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jms ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.addressing)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.addressing ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.rm)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.rm ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.ws.security.wss4j)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.ws.security.wss4j ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.security)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.security ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxfbc)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxfbc ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxfbc.interceptors)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxfbc.interceptors ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxfbc.wsdl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxfbc.wsdl ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.security.handler)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.security.handler ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.handler ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util)(version&gt;=6.1.0))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.util ;version=6.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.spring/1.0.0.m3' presentationname='Apache ServiceMix NMR Spring' symbolicname='org.apache.servicemix.nmr.spring' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.spring/1.0.0-m3/org.apache.servicemix.nmr.spring-1.0.0-m3.jar' version='1.0.0.m3'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13231
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Spring'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.spring'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.spring'/>
    <p n='uses' v='org.springframework.osgi.service.importer.support,org.springframework.osgi.context,org.springframework.beans.factory.config,org.springframework.core,javax.xml.namespace,org.osgi.framework,org.apache.servicemix.nmr.api,org.springframework.beans,org.springframework.beans.factory'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.service.importer.support)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.service.importer.support
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.spring/1.0.0' presentationname='Apache ServiceMix NMR Spring' symbolicname='org.apache.servicemix.nmr.spring' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.spring/1.0.0/org.apache.servicemix.nmr.spring-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13175
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Spring'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.spring'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.spring'/>
    <p n='uses' v='org.springframework.osgi.service.importer.support,org.springframework.osgi.context,org.springframework.beans.factory.config,org.springframework.core,javax.xml.namespace,org.osgi.framework,org.apache.servicemix.nmr.api,org.springframework.beans,org.springframework.beans.factory'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.service.importer.support)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.service.importer.support
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.0.m2
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.spring/1.0.0.m1' presentationname='ServiceMix NMR Spring' symbolicname='org.apache.servicemix.nmr.spring' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.spring/1.0-m1/org.apache.servicemix.nmr.spring-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13139
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix NMR Spring'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.spring'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.spring'/>
    <p n='uses' v='org.springframework.osgi.service.importer.support,org.springframework.osgi.context,org.springframework.beans.factory.config,org.springframework.core,javax.xml.namespace,org.osgi.framework,org.apache.servicemix.nmr.api,org.springframework.beans,org.springframework.beans.factory'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.service.importer.support)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.service.importer.support
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.spring/1.0.0.m2' presentationname='Apache ServiceMix NMR Spring' symbolicname='org.apache.servicemix.nmr.spring' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.spring/1.0.0-m2/org.apache.servicemix.nmr.spring-1.0.0-m2.jar' version='1.0.0.m2'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13229
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Spring'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.spring'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.spring'/>
    <p n='uses' v='org.springframework.osgi.service.importer.support,org.springframework.osgi.context,org.springframework.beans.factory.config,org.springframework.core,javax.xml.namespace,org.osgi.framework,org.apache.servicemix.nmr.api,org.springframework.beans,org.springframework.beans.factory'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.service.importer.support)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.service.importer.support
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.audit/1.0.0' presentationname='Apache ServiceMix NMR Audit' symbolicname='org.apache.servicemix.nmr.audit' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.audit/1.0.0/org.apache.servicemix.nmr.audit-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    41759
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Audit'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.audit'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.audit.jdbc'/>
    <p n='uses' v='org.apache.servicemix.jdbc,org.apache.servicemix.nmr.audit,org.apache.servicemix.nmr.api,org.apache.commons.logging,org.springframework.beans.factory,javax.sql'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.audit'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.event,org.apache.servicemix.nmr.api,org.apache.commons.logging'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.audit.commands'/>
    <p n='uses' v='org.apache.servicemix.nmr.audit,org.apache.geronimo.gshell.command,org.osgi.framework,org.apache.servicemix.nmr.api,org.apache.servicemix.kernel.gshell.core,org.apache.geronimo.gshell.io,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.audit.file'/>
    <p n='uses' v='org.apache.servicemix.nmr.audit,org.apache.servicemix.nmr.api,org.apache.commons.logging,org.apache.servicemix.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.audit.lucene'/>
    <p n='uses' v='org.apache.lucene.queryParser,org.apache.lucene.document,org.apache.lucene.analysis,org.apache.lucene.index,org.apache.servicemix.nmr.api,org.apache.commons.logging,org.apache.servicemix.nmr.core.util,org.apache.lucene.search,org.apache.lucene.store,org.apache.servicemix.nmr.audit,org.apache.servicemix.nmr.api.event,org.apache.lucene.analysis.standard'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.io)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.io ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.registry)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.registry ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.lucene.analysis)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.lucene.analysis
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.lucene.analysis.standard)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.lucene.analysis.standard
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.lucene.document)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.lucene.document
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.lucene.index)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.lucene.index
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.lucene.queryParser)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.lucene.queryParser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.lucene.search)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.lucene.search
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.lucene.store)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.lucene.store
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jdbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jdbc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.audit)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.audit ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.audit.commands)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.audit.commands ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.audit.file)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.audit.file ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.audit.jdbc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.audit.jdbc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.audit.lucene)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.audit.lucene ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.util
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.osgi/1.0.0.m1' presentationname='ServiceMix NMR OSGi' symbolicname='org.apache.servicemix.nmr.osgi' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.osgi/1.0-m1/org.apache.servicemix.nmr.osgi-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11103
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix NMR OSGi'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.osgi'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.osgi'/>
    <p n='uses' v='org.springframework.osgi.context,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.core,org.osgi.framework,org.apache.servicemix.nmr.core.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.osgi/1.0.0.m2' presentationname='Apache ServiceMix NMR OSGi' symbolicname='org.apache.servicemix.nmr.osgi' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.osgi/1.0.0-m2/org.apache.servicemix.nmr.osgi-1.0.0-m2.jar' version='1.0.0.m2'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11463
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR OSGi'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.osgi'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.osgi'/>
    <p n='uses' v='org.springframework.osgi.context,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.core,org.osgi.framework,org.apache.servicemix.nmr.core.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.document)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.document
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.osgi/1.0.0' presentationname='Apache ServiceMix NMR OSGi' symbolicname='org.apache.servicemix.nmr.osgi' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.osgi/1.0.0/org.apache.servicemix.nmr.osgi-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13489
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR OSGi'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.osgi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.osgi'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.core,org.osgi.framework,org.apache.servicemix.nmr.core.util,org.springframework.osgi.util,org.springframework.osgi.context,org.apache.servicemix.nmr.api.internal,org.osgi.util.tracker,org.springframework.beans.factory'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.document)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.document
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util ;version=1.2.0.m2
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.osgi/1.0.0.m3' presentationname='Apache ServiceMix NMR OSGi' symbolicname='org.apache.servicemix.nmr.osgi' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.osgi/1.0.0-m3/org.apache.servicemix.nmr.osgi-1.0.0-m3.jar' version='1.0.0.m3'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11462
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR OSGi'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.osgi'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.osgi'/>
    <p n='uses' v='org.springframework.osgi.context,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.core,org.osgi.framework,org.apache.servicemix.nmr.core.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.document)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.document
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.examples.nmr.client/1.0.0' presentationname='Apache ServiceMix NMR Example:: NMR Client' symbolicname='org.apache.servicemix.nmr.examples.nmr.client' uri='../org/apache/servicemix/nmr/examples/org.apache.servicemix.nmr.examples.nmr.client/1.0.0/org.apache.servicemix.nmr.examples.nmr.client-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11793
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Example:: NMR Client'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.examples.nmr.client'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.examples.nmr.endpoint/1.0.0' presentationname='Apache ServiceMix NMR Example:: NMR Endpoint' symbolicname='org.apache.servicemix.nmr.examples.nmr.endpoint' uri='../org/apache/servicemix/nmr/examples/org.apache.servicemix.nmr.examples.nmr.endpoint/1.0.0/org.apache.servicemix.nmr.examples.nmr.endpoint-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10842
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Example:: NMR Endpoint'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.examples.nmr.endpoint'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
</resource>
<resource id='exchange/1.0.0' presentationname='Apache ServiceMix NMR Example:: Exchange Listener' symbolicname='exchange' uri='../org/apache/servicemix/nmr/examples/interceptors/exchange/1.0.0/exchange-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11194
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Example:: Exchange Listener'/>
    <p n='symbolicname' v='exchange'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
</resource>
<resource id='endpoint/1.0.0' presentationname='Apache ServiceMix NMR Example:: Endpoint Listener' symbolicname='endpoint' uri='../org/apache/servicemix/nmr/examples/interceptors/endpoint/1.0.0/endpoint-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10725
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Example:: Endpoint Listener'/>
    <p n='symbolicname' v='endpoint'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.commands/1.0.0' presentationname='Apache ServiceMix NMR Commands' symbolicname='org.apache.servicemix.nmr.commands' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.commands/1.0.0/org.apache.servicemix.nmr.commands-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12725
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.commands'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.commands'/>
    <p n='uses' v='org.osgi.framework,org.apache.servicemix.kernel.gshell.core,org.apache.servicemix.nmr.api,org.apache.geronimo.gshell.io'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.io)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.io ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.registry)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.registry ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.commands)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.commands
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.commands/1.0.0.m3' presentationname='Apache ServiceMix NMR Commands' symbolicname='org.apache.servicemix.nmr.commands' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.commands/1.0.0-m3/org.apache.servicemix.nmr.commands-1.0.0-m3.jar' version='1.0.0.m3'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12684
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.commands'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.commands'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.osgi.framework,org.apache.servicemix.nmr.api'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.commands)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.commands
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0)(!(version&gt;=2.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=[1.3.0,2.0.0)
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.commands/1.0.0.m2' presentationname='Apache ServiceMix NMR Commands' symbolicname='org.apache.servicemix.nmr.commands' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.commands/1.0.0-m2/org.apache.servicemix.nmr.commands-1.0.0-m2.jar' version='1.0.0.m2'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12633
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.commands'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.commands'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.osgi.framework,org.apache.servicemix.nmr.api'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.commands)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.commands
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.commands/1.0.0.m1' presentationname='ServiceMix NMR Commands' symbolicname='org.apache.servicemix.nmr.commands' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.commands/1.0-m1/org.apache.servicemix.nmr.commands-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12032
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix NMR Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.commands'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.commands'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.osgi.framework,org.apache.servicemix.nmr.api'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.commands)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.commands
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.api/1.0.0.m2' presentationname='Apache ServiceMix NMR API' symbolicname='org.apache.servicemix.nmr.api' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.api/1.0.0-m2/org.apache.servicemix.nmr.api-1.0.0-m2.jar' version='1.0.0.m2'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28281
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR API'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.api'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api.internal'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.api'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api.service'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api.event'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api.security'/>
    <p n='uses' v='javax.xml.namespace,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.api.event,javax.xml.namespace,org.w3c.dom,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.api/1.0.0' presentationname='Apache ServiceMix NMR API' symbolicname='org.apache.servicemix.nmr.api' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.api/1.0.0/org.apache.servicemix.nmr.api-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    30515
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR API'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.api'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api.internal'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.api'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api.service'/>
    <p n='uses' v='org.apache.servicemix.nmr.api'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api.event'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api.security'/>
    <p n='uses' v='javax.xml.namespace,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.api.event,javax.xml.namespace,org.w3c.dom,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.api/1.0.0.m1' presentationname='ServiceMix NMR API' symbolicname='org.apache.servicemix.nmr.api' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.api/1.0-m1/org.apache.servicemix.nmr.api-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    23354
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix NMR API'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.api'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api.internal'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.api'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api.service'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api.event'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.api.event,javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.api/1.0.0.m3' presentationname='Apache ServiceMix NMR API' symbolicname='org.apache.servicemix.nmr.api' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.api/1.0.0-m3/org.apache.servicemix.nmr.api-1.0.0-m3.jar' version='1.0.0.m3'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28282
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR API'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.api'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api.internal'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.api'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api.service'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api.event'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api.security'/>
    <p n='uses' v='javax.xml.namespace,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.api'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.api.event,javax.xml.namespace,org.w3c.dom,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.branding/1.0.0' presentationname='Apache ServiceMix NMR Branding Support' symbolicname='org.apache.servicemix.nmr.branding' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.branding/1.0.0/org.apache.servicemix.nmr.branding-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    9002
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Branding Support'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.branding'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.version'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.version)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.version
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.core/1.0.0.m3' presentationname='Apache ServiceMix NMR Core' symbolicname='org.apache.servicemix.nmr.core' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.core/1.0.0-m3/org.apache.servicemix.nmr.core-1.0.0-m3.jar' version='1.0.0.m3'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    56966
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Core'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.core'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.core'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.api.security,javax.xml.namespace,org.osgi.framework,org.apache.servicemix.nmr.api,org.w3c.dom,org.apache.commons.logging,org.apache.servicemix.nmr.core.util,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.event,org.apache.camel.impl.converter,org.apache.camel.spi,org.apache.camel.util,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.core.util'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.servicemix.nmr.core,javax.xml.namespace,org.apache.servicemix.nmr.api,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.core.security'/>
    <p n='uses' v='javax.security.auth.login,org.apache.servicemix.nmr.api.security,javax.xml.namespace,org.apache.commons.logging,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.converter)(version&gt;=1.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.impl.converter ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=1.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.spi ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.util
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.core/1.0.0.m1' presentationname='ServiceMix NMR Core' symbolicname='org.apache.servicemix.nmr.core' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.core/1.0-m1/org.apache.servicemix.nmr.core-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    42208
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix NMR Core'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.core'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.core'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.service,javax.xml.namespace,org.osgi.framework,org.apache.servicemix.nmr.api,org.w3c.dom,org.apache.commons.logging,org.apache.servicemix.nmr.core.util,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.event,org.apache.camel.impl.converter,org.apache.camel.spi,org.apache.camel.impl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.core.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=1.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.impl ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.converter)(version&gt;=1.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.impl.converter ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=1.2.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.spi ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.util
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.core/1.0.0' presentationname='Apache ServiceMix NMR Core' symbolicname='org.apache.servicemix.nmr.core' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.core/1.0.0/org.apache.servicemix.nmr.core-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    67182
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Core'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.core'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.core'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.service,org.apache.servicemix.executors,org.apache.servicemix.executors.impl,org.apache.servicemix.nmr.api.security,javax.xml.namespace,org.osgi.framework,org.w3c.dom,org.apache.servicemix.nmr.api,org.apache.commons.logging,org.apache.servicemix.nmr.core.util,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.event,org.apache.camel.impl.converter,org.apache.camel.spi,org.apache.camel.util,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.core.util'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.servicemix.nmr.core,javax.xml.namespace,org.apache.servicemix.nmr.api,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.core.security'/>
    <p n='uses' v='javax.security.auth.login,org.apache.servicemix.nmr.api.security,javax.xml.namespace,org.apache.commons.logging,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.core.converter'/>
    <p n='uses' v='org.apache.camel,org.apache.servicemix.nmr.core.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=1.6.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.converter)(version&gt;=1.6.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.impl.converter ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=1.6.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.spi ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=1.6.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.util ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.converter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.converter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.util
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.core/1.0.0.m2' presentationname='Apache ServiceMix NMR Core' symbolicname='org.apache.servicemix.nmr.core' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.core/1.0.0-m2/org.apache.servicemix.nmr.core-1.0.0-m2.jar' version='1.0.0.m2'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    52047
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Core'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.core'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.core'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.service,org.apache.servicemix.nmr.api.security,javax.xml.namespace,org.osgi.framework,org.apache.servicemix.nmr.api,org.w3c.dom,org.apache.commons.logging,org.apache.servicemix.nmr.core.util,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.event,org.apache.camel.impl.converter,org.apache.camel.spi,org.apache.camel.util,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.core.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.core.security'/>
    <p n='uses' v='javax.security.auth.login,org.apache.servicemix.nmr.api.security,javax.xml.namespace,org.apache.commons.logging,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl.converter)(version&gt;=1.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.impl.converter ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=1.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.spi ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.camel.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.core.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.core.util
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.management/1.0.0.m3' presentationname='Apache ServiceMix NMR Management' symbolicname='org.apache.servicemix.nmr.management' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.management/1.0.0-m3/org.apache.servicemix.nmr.management-1.0.0-m3.jar' version='1.0.0.m3'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22462
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Management'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.management'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.management.stats'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.management'/>
    <p n='uses' v='javax.management,org.apache.servicemix.nmr.api,org.apache.commons.logging,org.springframework.jmx.export.assembler,org.springframework.jmx.export.metadata,org.springframework.jmx.export.annotation,org.apache.servicemix.nmr.management.stats,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.event,javax.management.modelmbean,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.management)(version&gt;=1.0.0.m3))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.management ;version=1.0.0.m3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.management.stats)(version&gt;=1.0.0.m3))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.management.stats ;version=1.0.0.m3
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.annotation ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.assembler)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.assembler ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.metadata)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.metadata ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.management/1.0.0.m1' presentationname='ServiceMix NMR Management' symbolicname='org.apache.servicemix.nmr.management' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.management/1.0-m1/org.apache.servicemix.nmr.management-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22305
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix NMR Management'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.management'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.management.stats'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.management'/>
    <p n='uses' v='javax.management,org.apache.servicemix.nmr.api,org.apache.commons.logging,org.springframework.jmx.export.assembler,org.springframework.jmx.export.metadata,org.springframework.jmx.export.annotation,org.apache.servicemix.nmr.management.stats,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.event,javax.management.modelmbean,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.management)(version&gt;=1.0.0.m1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.management ;version=1.0.0.m1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.management.stats)(version&gt;=1.0.0.m1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.management.stats ;version=1.0.0.m1
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.annotation ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.assembler)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.assembler ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.metadata)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.metadata ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.management/1.0.0' presentationname='Apache ServiceMix NMR Management' symbolicname='org.apache.servicemix.nmr.management' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.management/1.0.0/org.apache.servicemix.nmr.management-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22732
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Management'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.management'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.management.stats'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.management'/>
    <p n='uses' v='javax.management,org.apache.servicemix.nmr.api,org.apache.commons.logging,org.springframework.jmx.export.assembler,org.springframework.jmx.export.metadata,org.springframework.jmx.export.annotation,org.apache.servicemix.nmr.management.stats,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.event,javax.management.modelmbean,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.management)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.management ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.management.stats)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.management.stats ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.annotation ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.assembler)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.assembler ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.metadata)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.metadata ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.nmr.management/1.0.0.m2' presentationname='Apache ServiceMix NMR Management' symbolicname='org.apache.servicemix.nmr.management' uri='../org/apache/servicemix/nmr/org.apache.servicemix.nmr.management/1.0.0-m2/org.apache.servicemix.nmr.management-1.0.0-m2.jar' version='1.0.0.m2'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22460
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix NMR Management'/>
    <p n='symbolicname' v='org.apache.servicemix.nmr.management'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.management.stats'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.nmr.management'/>
    <p n='uses' v='javax.management,org.apache.servicemix.nmr.api,org.apache.commons.logging,org.springframework.jmx.export.assembler,org.springframework.jmx.export.metadata,org.springframework.jmx.export.annotation,org.apache.servicemix.nmr.management.stats,org.apache.servicemix.nmr.api.internal,org.apache.servicemix.nmr.api.event,javax.management.modelmbean,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.management)(version&gt;=1.0.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.management ;version=1.0.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.management.stats)(version&gt;=1.0.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.management.stats ;version=1.0.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.annotation ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.assembler)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.assembler ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.metadata)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.metadata ;version=2.5.0
  </require>
</resource>
<resource id='cxf-nmr/4.0.0' presentationname='Apache ServiceMix Example :: CXF NMR' symbolicname='cxf-nmr' uri='../org/apache/servicemix/examples/cxf-nmr/4.0.0/cxf-nmr-4.0.0.jar' version='4.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10415
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Example :: CXF NMR'/>
    <p n='symbolicname' v='cxf-nmr'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.cxf.cxf-bundle)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.cxf.cxf-bundle; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.nmr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxf.transport.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxf.transport.nmr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
</resource>
<resource id='cxf-nmr/4.0.0.m1' presentationname='Apache ServiceMix Example :: CXF NMR' symbolicname='cxf-nmr' uri='../org/apache/servicemix/examples/cxf-nmr/4.0-m1/cxf-nmr-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10485
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Example :: CXF NMR'/>
    <p n='symbolicname' v='cxf-nmr'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.servicemix.bundles.woodstox-3.2.3)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.servicemix.bundles.woodstox-3.2.3;
    
    
    
    
    
    
    
    
    
    
    
     0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.nmr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
</resource>
<resource id='cxf-handler-cfg/4.0.0' presentationname='Apache ServiceMix Example :: CXF SOAP HANDLER OSGi' symbolicname='cxf-handler-cfg' uri='../org/apache/servicemix/examples/cxf-handler-cfg/4.0.0/cxf-handler-cfg-4.0.0.jar' version='4.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    21088
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Example :: CXF SOAP HANDLER OSGi'/>
    <p n='symbolicname' v='cxf-handler-cfg'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.springcfg.handlers.types'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.examples.cxf.springcfghandler'/>
    <p n='uses' v='javax.xml.ws.handler,org.apache.springcfg.handlers.types,javax.jws,javax.xml.bind,javax.xml.ws,org.apache.springcfg.handlers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.springcfg.handlers'/>
    <p n='uses' v='org.apache.springcfg.handlers.types,javax.xml.namespace,javax.jws,javax.xml.ws,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.cxf.cxf-bundle)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.cxf.cxf-bundle; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.osgi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxf.transport.http_osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxf.transport.http_osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
</resource>
<resource id='cxf-ws-addressing/4.0.0' presentationname='Apache ServiceMix Example :: CXF WS-ADDRESSING OSGI' symbolicname='cxf-ws-addressing' uri='../org/apache/servicemix/examples/cxf-ws-addressing/4.0.0/cxf-ws-addressing-4.0.0.jar' version='4.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    25167
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Example :: CXF WS-ADDRESSING OSGI'/>
    <p n='symbolicname' v='cxf-ws-addressing'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.hello_world_soap_http.types'/>
    <p n='uses' v='javax.xml.bind.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.hello_world_soap_http'/>
    <p n='uses' v='org.apache.hello_world_soap_http.types,javax.xml.namespace,javax.jws,javax.xml.bind.annotation,javax.xml.ws'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.examples.cxf.wsaddressing'/>
    <p n='uses' v='org.apache.hello_world_soap_http.types,org.apache.hello_world_soap_http,javax.jws'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.cxf.cxf-bundle)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.cxf.cxf-bundle; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.osgi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxf.transport.http_osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxf.transport.http_osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
</resource>
<resource id='camel-osgi/4.0.0' presentationname='Apache ServiceMix Example :: Camel OSGi' symbolicname='camel-osgi' uri='../org/apache/servicemix/examples/camel-osgi/4.0.0/camel-osgi-4.0.0.jar' version='4.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10264
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Example :: Camel OSGi'/>
    <p n='symbolicname' v='camel-osgi'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='camel-osgi/4.0.0.m1' presentationname='Apache ServiceMix Example :: Camel OSGi' symbolicname='camel-osgi' uri='../org/apache/servicemix/examples/camel-osgi/4.0-m1/camel-osgi-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10305
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Example :: Camel OSGi'/>
    <p n='symbolicname' v='camel-osgi'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
</resource>
<resource id='cxf-osgi/4.0.0.m1' presentationname='Apache ServiceMix Example :: CXF OSGi' symbolicname='cxf-osgi' uri='../org/apache/servicemix/examples/cxf-osgi/4.0-m1/cxf-osgi-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10477
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Example :: CXF OSGi'/>
    <p n='symbolicname' v='cxf-osgi'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.servicemix.bundles.woodstox-3.2.3)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.servicemix.bundles.woodstox-3.2.3;
    
    
    
    
    
    
    
    
    
    
    
     0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.osgi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
</resource>
<resource id='cxf-osgi/4.0.0' presentationname='Apache ServiceMix Example :: CXF OSGi' symbolicname='cxf-osgi' uri='../org/apache/servicemix/examples/cxf-osgi/4.0.0/cxf-osgi-4.0.0.jar' version='4.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11521
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Example :: CXF OSGi'/>
    <p n='symbolicname' v='cxf-osgi'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.cxf.cxf-bundle)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.cxf.cxf-bundle; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.osgi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxf.transport.http_osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxf.transport.http_osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
</resource>
<resource id='cxf-jms-osgi/4.0.0' presentationname='Apache ServiceMix Example :: CXF JMS transport OSGi' symbolicname='cxf-jms-osgi' uri='../org/apache/servicemix/examples/cxf-jms-osgi/4.0.0/cxf-jms-osgi-4.0.0.jar' version='4.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18872
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Example :: CXF JMS transport OSGi'/>
    <p n='symbolicname' v='cxf-jms-osgi'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.examples.cxf'/>
    <p n='uses' v='javax.xml.namespace,javax.jws,javax.xml.bind,javax.xml.ws,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.cxf.cxf-bundle)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.cxf.cxf-bundle; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=javax.jms)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jms
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.jmx)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.jmx
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.broker.region.policy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.broker.region.policy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.network)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.network
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.pool)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.pool
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.store.amq)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.store.amq
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.usage)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.usage
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.activemq.xbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.activemq.xbean
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
</resource>
<resource id='cxf-camel-nmr/4.0.0.m1' presentationname='Apache ServiceMix Example :: CXF-Camel NMR' symbolicname='cxf-camel-nmr' uri='../org/apache/servicemix/examples/cxf-camel-nmr/4.0-m1/cxf-camel-nmr-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12752
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Example :: CXF-Camel NMR'/>
    <p n='symbolicname' v='cxf-camel-nmr'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.servicemix.bundles.woodstox-3.2.3)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.servicemix.bundles.woodstox-3.2.3;
    
    
    
    
    
    
    
    
    
    
    
     0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.nmr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.camel
  </require>
</resource>
<resource id='cxf-camel-nmr/4.0.0' presentationname='Apache ServiceMix Example :: CXF-Camel NMR' symbolicname='cxf-camel-nmr' uri='../org/apache/servicemix/examples/cxf-camel-nmr/4.0.0/cxf-camel-nmr-4.0.0.jar' version='4.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12695
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Example :: CXF-Camel NMR'/>
    <p n='symbolicname' v='cxf-camel-nmr'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.cxf.cxf-bundle)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.cxf.cxf-bundle; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.nmr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.converter.jaxp)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.converter.jaxp ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.camel.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.camel.nmr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxf.transport.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxf.transport.nmr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
</resource>
<resource id='cxf-nmr-osgi/4.0.0' presentationname='Apache ServiceMix Example :: CXF NMR transport OSGi' symbolicname='cxf-nmr-osgi' uri='../org/apache/servicemix/examples/cxf-nmr-osgi/4.0.0/cxf-nmr-osgi-4.0.0.jar' version='4.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16682
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Example :: CXF NMR transport OSGi'/>
    <p n='symbolicname' v='cxf-nmr-osgi'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.examples.cxf'/>
    <p n='uses' v='javax.xml.namespace,javax.jws,javax.xml.bind,javax.xml.ws,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.cxf.cxf-bundle)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.cxf.cxf-bundle; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.nmr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxf.transport.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxf.transport.nmr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.event
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.internal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.internal
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
</resource>
<resource id='cxf-http-osgi/4.0.0' presentationname='Apache ServiceMix Example :: CXF OSGi' symbolicname='cxf-http-osgi' uri='../org/apache/servicemix/examples/cxf-http-osgi/4.0.0/cxf-http-osgi-4.0.0.jar' version='4.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16602
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Example :: CXF OSGi'/>
    <p n='symbolicname' v='cxf-http-osgi'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.examples.cxf'/>
    <p n='uses' v='javax.xml.namespace,javax.jws,javax.xml.bind,javax.xml.ws,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.cxf.cxf-bundle)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.cxf.cxf-bundle; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.osgi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxf.transport.http_osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxf.transport.http_osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
</resource>
<resource id='camel-nmr/4.0.0' presentationname='Apache ServiceMix Example :: Camel NMR' symbolicname='camel-nmr' uri='../org/apache/servicemix/examples/camel-nmr/4.0.0/camel-nmr-4.0.0.jar' version='4.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10264
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Example :: Camel NMR'/>
    <p n='symbolicname' v='camel-nmr'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.camel.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.camel.nmr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
</resource>
<resource id='camel-nmr/4.0.0.m1' presentationname='Apache ServiceMix Example :: Camel NMR' symbolicname='camel-nmr' uri='../org/apache/servicemix/examples/camel-nmr/4.0-m1/camel-nmr-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10432
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Example :: Camel NMR'/>
    <p n='symbolicname' v='camel-nmr'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.camel
  </require>
</resource>
<resource id='cxf-soap-handler-osgi/4.0.0' presentationname='Apache ServiceMix Example :: CXF SOAP HANDLER OSGi' symbolicname='cxf-soap-handler-osgi' uri='../org/apache/servicemix/examples/cxf-soap-handler-osgi/4.0.0/cxf-soap-handler-osgi-4.0.0.jar' version='4.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    23833
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Example :: CXF SOAP HANDLER OSGi'/>
    <p n='symbolicname' v='cxf-soap-handler-osgi'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.handlers'/>
    <p n='uses' v='org.apache.handlers.types,javax.xml.namespace,javax.jws,javax.xml.ws,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.handlers.types'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.bind,javax.xml.bind.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.examples.cxf.soaphandler'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.soap,org.apache.handlers,org.apache.handlers.types,javax.xml.ws.handler.soap,javax.jws,javax.xml.bind,javax.xml.ws,javax.xml.transform'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.cxf.cxf-bundle)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.cxf.cxf-bundle; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.osgi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.configuration.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.configuration.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxf.transport.http_osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxf.transport.http_osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.spring/1.0.0.m2' presentationname='ServiceMix Kernel :: Spring Deployer' symbolicname='org.apache.servicemix.kernel.spring' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.spring/1.0-m2/org.apache.servicemix.kernel.spring-1.0-m2.jar' version='1.0.0.m2'>
  <description>
    This deployer transforms a plain spring xml file to a deployable
    
    
    
    
    
    
    
    
    
    
    
     bundle
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12929
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix Kernel :: Spring Deployer'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.spring'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.spring/1.0.0.rc1' presentationname='Apache ServiceMix Kernel :: Spring Deployer' symbolicname='org.apache.servicemix.kernel.spring' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.spring/1.0.0-rc1/org.apache.servicemix.kernel.spring-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    This deployer transforms a plain spring xml file to a deployable
    
    
    
    
    
    
    
    
    
    
    
     bundle
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20117
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: Spring Deployer'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.spring'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.spring/1.0.0.m1' presentationname='ServiceMix Kernel :: Spring Deployer' symbolicname='org.apache.servicemix.kernel.spring' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.spring/1.0-m1/org.apache.servicemix.kernel.spring-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    This deployer transforms a plain spring xml file to a deployable
    
    
    
    
    
    
    
    
    
    
    
     bundle
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13066
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix Kernel :: Spring Deployer'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.spring'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.spring/1.0.0.rc2' presentationname='Apache ServiceMix Kernel :: Spring Deployer' symbolicname='org.apache.servicemix.kernel.spring' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.spring/1.0.0-rc2/org.apache.servicemix.kernel.spring-1.0.0-rc2.jar' version='1.0.0.rc2'>
  <description>
    This deployer transforms a plain spring xml file to a deployable
    
    
    
    
    
    
    
    
    
    
    
     bundle
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20058
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: Spring Deployer'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.spring'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.spring/1.0.0.m3' presentationname='Apache ServiceMix Kernel :: Spring Deployer' symbolicname='org.apache.servicemix.kernel.spring' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.spring/1.0-m3/org.apache.servicemix.kernel.spring-1.0-m3.jar' version='1.0.0.m3'>
  <description>
    This deployer transforms a plain spring xml file to a deployable
    
    
    
    
    
    
    
    
    
    
    
     bundle
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20040
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: Spring Deployer'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.spring'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.spring/1.1.0' presentationname='Apache ServiceMix Kernel :: Spring Deployer' symbolicname='org.apache.servicemix.kernel.spring' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.spring/1.1.0/org.apache.servicemix.kernel.spring-1.1.0.jar' version='1.1.0'>
  <description>
    This deployer transforms a plain spring xml file to a deployable
    
    
    
    
    
    
    
    
    
    
    
     bundle
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20692
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: Spring Deployer'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.spring'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.spring/1.0.0' presentationname='Apache ServiceMix Kernel :: Spring Deployer' symbolicname='org.apache.servicemix.kernel.spring' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.spring/1.0.0/org.apache.servicemix.kernel.spring-1.0.0.jar' version='1.0.0'>
  <description>
    This deployer transforms a plain spring xml file to a deployable
    
    
    
    
    
    
    
    
    
    
    
     bundle
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20054
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: Spring Deployer'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.spring'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.management/1.1.0' presentationname='Apache ServiceMix Kernel :: Management' symbolicname='org.apache.servicemix.kernel.management' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.management/1.1.0/org.apache.servicemix.kernel.management-1.1.0.jar' version='1.1.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13469
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: Management'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.management'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.management'/>
    <p n='uses' v='javax.security.auth.login,org.springframework.beans.factory,javax.security.auth,javax.management.remote,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.management
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.support ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.main/1.0.0.rc2' presentationname='Apache ServiceMix' symbolicname='org.apache.servicemix.kernel.main' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.main/1.0.0-rc2/org.apache.servicemix.kernel.main-1.0.0-rc2.jar' version='1.0.0.rc2'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    357942
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.main'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.main.spi'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
</resource>
<resource id='org.apache.servicemix.kernel.main/1.0.0.m3' presentationname='Apache ServiceMix' symbolicname='org.apache.servicemix.kernel.main' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.main/1.0-m3/org.apache.servicemix.kernel.main-1.0-m3.jar' version='1.0.0.m3'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    351723
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.main'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.main.spi'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
</resource>
<resource id='org.apache.servicemix.kernel.main/1.0.0.rc1' presentationname='Apache ServiceMix' symbolicname='org.apache.servicemix.kernel.main' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.main/1.0.0-rc1/org.apache.servicemix.kernel.main-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    351561
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.main'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.main.spi'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
</resource>
<resource id='org.apache.servicemix.kernel.main/1.0.0.m1' presentationname='Apache ServiceMix' symbolicname='org.apache.servicemix.kernel.main' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.main/1.0-m1/org.apache.servicemix.kernel.main-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    338505
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.main'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.main.spi'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
</resource>
<resource id='org.apache.servicemix.kernel.main/1.1.0' presentationname='Apache ServiceMix' symbolicname='org.apache.servicemix.kernel.main' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.main/1.1.0/org.apache.servicemix.kernel.main-1.1.0.jar' version='1.1.0'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    386160
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.main'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.main.spi'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
</resource>
<resource id='org.apache.servicemix.kernel.main/1.0.0.m2' presentationname='Apache ServiceMix' symbolicname='org.apache.servicemix.kernel.main' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.main/1.0-m2/org.apache.servicemix.kernel.main-1.0-m2.jar' version='1.0.0.m2'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    350178
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.main'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.main.spi'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
</resource>
<resource id='org.apache.servicemix.kernel.main/1.0.0' presentationname='Apache ServiceMix' symbolicname='org.apache.servicemix.kernel.main' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.main/1.0.0/org.apache.servicemix.kernel.main-1.0.0.jar' version='1.0.0'>
  <description>
    OSGi R4 framework.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    357950
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.main'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.main.spi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
</resource>
<resource id='org.apache.servicemix.kernel.filemonitor/1.0.0.m3' presentationname='Apache ServiceMix Kernel :: File Monitor' symbolicname='org.apache.servicemix.kernel.filemonitor' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.filemonitor/1.0-m3/org.apache.servicemix.kernel.filemonitor-1.0-m3.jar' version='1.0.0.m3'>
  <description>
    This bundle monitors the deploy directory for new OSGi bundles
    
    
    
    
    
    
    
    
    
    
    
     in
     jar form,
    
     expanded
     form
     or
     for
 
        configuration
    
  
      
    
     file
    
     changes
    
    
 
       
     and undeploys/redeploys
    
     them
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28874
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: File Monitor'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.filemonitor'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.filemonitor'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.osgi.framework,org.apache.commons.logging,org.osgi.service.cm,org.osgi.service.packageadmin,org.osgi.util.tracker'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.filemonitor/1.0.0.rc2' presentationname='Apache ServiceMix Kernel :: File Monitor' symbolicname='org.apache.servicemix.kernel.filemonitor' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.filemonitor/1.0.0-rc2/org.apache.servicemix.kernel.filemonitor-1.0.0-rc2.jar' version='1.0.0.rc2'>
  <description>
    This bundle monitors the deploy directory for new OSGi bundles
    
    
    
    
    
    
    
    
    
    
    
     in
     jar form,
    
     expanded
     form
     or
     for
 
        configuration
    
  
      
    
     file
    
     changes
    
    
 
       
     and undeploys/redeploys
    
     them
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    30295
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: File Monitor'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.filemonitor'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.filemonitor'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.osgi.framework,org.apache.commons.logging,org.osgi.service.cm,org.osgi.service.packageadmin,org.osgi.util.tracker'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.filemonitor/1.1.0' presentationname='Apache ServiceMix Kernel :: File Monitor' symbolicname='org.apache.servicemix.kernel.filemonitor' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.filemonitor/1.1.0/org.apache.servicemix.kernel.filemonitor-1.1.0.jar' version='1.1.0'>
  <description>
    This bundle monitors the deploy directory for new OSGi bundles
    
    
    
    
    
    
    
    
    
    
    
     in
     jar form,
    
     expanded
     form
     or
     for
 
           
       
     configuration
    
    
    
    
   
     
     file
  
     
      changes
     and undeploys/redeploys
    
    
    
     them
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    35150
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: File Monitor'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.filemonitor'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.filemonitor'/>
    <p n='uses' v='org.osgi.framework,org.apache.commons.logging,org.osgi.service.cm,org.osgi.service.packageadmin,org.osgi.util.tracker,org.osgi.service.prefs'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.prefs ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.filemonitor/1.0.0' presentationname='Apache ServiceMix Kernel :: File Monitor' symbolicname='org.apache.servicemix.kernel.filemonitor' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.filemonitor/1.0.0/org.apache.servicemix.kernel.filemonitor-1.0.0.jar' version='1.0.0'>
  <description>
    This bundle monitors the deploy directory for new OSGi bundles
    
    
    
    
    
    
    
    
    
    
    
     in
     jar form,
    
     expanded
     form
     or
     for
 
        configuration
    
  
      
    
     file
    
     changes
    
    
 
       
     and undeploys/redeploys
    
     them
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    32386
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: File Monitor'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.filemonitor'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.filemonitor'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.osgi.framework,org.apache.commons.logging,org.osgi.service.cm,org.osgi.service.packageadmin,org.osgi.util.tracker'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.filemonitor/1.0.0.m1' presentationname='ServiceMix Kernel :: File Monitor' symbolicname='org.apache.servicemix.kernel.filemonitor' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.filemonitor/1.0-m1/org.apache.servicemix.kernel.filemonitor-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    This bundle monitors the deploy directory for new OSGi bundles
    
    
    
    
    
    
    
    
    
    
    
     in
     jar form,
    
     expanded
     form
     or
     for
 
        configuration
    
  
      
    
     file
    
     changes
    
    
 
       
     and undeploys/redeploys
    
     them
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26770
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix Kernel :: File Monitor'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.filemonitor'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.filemonitor'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.osgi.framework,org.apache.commons.logging,org.osgi.service.cm,org.osgi.service.packageadmin,org.osgi.util.tracker'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.filemonitor/1.0.0.rc1' presentationname='Apache ServiceMix Kernel :: File Monitor' symbolicname='org.apache.servicemix.kernel.filemonitor' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.filemonitor/1.0.0-rc1/org.apache.servicemix.kernel.filemonitor-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    This bundle monitors the deploy directory for new OSGi bundles
    
    
    
    
    
    
    
    
    
    
    
     in
     jar form,
    
     expanded
     form
     or
     for
 
        configuration
    
  
      
    
     file
    
     changes
    
    
 
       
     and undeploys/redeploys
    
     them
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28749
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: File Monitor'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.filemonitor'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.filemonitor'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.osgi.framework,org.apache.commons.logging,org.osgi.service.cm,org.osgi.service.packageadmin,org.osgi.util.tracker'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.filemonitor/1.0.0.m2' presentationname='ServiceMix Kernel :: File Monitor' symbolicname='org.apache.servicemix.kernel.filemonitor' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.filemonitor/1.0-m2/org.apache.servicemix.kernel.filemonitor-1.0-m2.jar' version='1.0.0.m2'>
  <description>
    This bundle monitors the deploy directory for new OSGi bundles
    
    
    
    
    
    
    
    
    
    
    
     in
     jar form,
    
     expanded
     form
     or
     for
 
        configuration
    
  
      
    
     file
    
     changes
    
    
 
       
     and undeploys/redeploys
    
     them
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28593
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix Kernel :: File Monitor'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.filemonitor'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.filemonitor'/>
    <p n='uses' v='org.apache.tools.ant.taskdefs,org.apache.tools.ant,org.osgi.framework,org.apache.commons.logging,org.osgi.service.cm,org.osgi.service.packageadmin,org.osgi.util.tracker'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=1.7.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs ;version=1.7.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.client/1.1.0' presentationname='Apache ServiceMix Shell Client' symbolicname='org.apache.servicemix.kernel.client' uri='../org/apache/servicemix/kernel/org.apache.servicemix.kernel.client/1.1.0/org.apache.servicemix.kernel.client-1.1.0.jar' version='1.1.0'>
  <description>
    Shell client bundle for Apache ServiceMix Kernel.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    40442
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Shell Client'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.client'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.client'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.google.code.sshd)(version&gt;=0.1.0))' multiple='false' name='package' optional='false'>
    Import package com.google.code.sshd ;version=0.1.0
  </require>
  <require extend='false' filter='(&amp;(package=com.google.code.sshd.common.util)(version&gt;=0.1.0))' multiple='false' name='package' optional='false'>
    Import package com.google.code.sshd.common.util ;version=0.1.0
  </require>
  <require extend='false' filter='(&amp;(package=com.google.code.sshd.server)(version&gt;=0.1.0))' multiple='false' name='package' optional='false'>
    Import package com.google.code.sshd.server ;version=0.1.0
  </require>
  <require extend='false' filter='(&amp;(package=com.google.code.sshd.server.jaas)(version&gt;=0.1.0))' multiple='false' name='package' optional='false'>
    Import package com.google.code.sshd.server.jaas ;version=0.1.0
  </require>
  <require extend='false' filter='(&amp;(package=com.google.code.sshd.server.keyprovider)(version&gt;=0.1.0))' multiple='false' name='package' optional='false'>
    Import package com.google.code.sshd.server.keyprovider ;version=0.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=jline)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package jline ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jexl)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jexl ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jexl.resolver)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jexl.resolver ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.cache)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.cache ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.impl)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.impl ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.operations)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.operations ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.local)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.local ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.ram)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.ram ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.temp)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.temp ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.url)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.url ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.ansi)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.ansi ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.application)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.application ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.application.model)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.application.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.application.plugin)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.application.plugin
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.application.plugin.activation)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.application.plugin.activation
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.application.plugin.bundle)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.application.plugin.bundle
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.artifact)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.artifact ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.artifact.transfer)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.artifact.transfer
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.artifact.transfer.monitor)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.artifact.transfer.monitor
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.chronos)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.chronos ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp.handler)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp.handler ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp.setter)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp.setter ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commandline)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commandline ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.builtin)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.builtin
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.file)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.file ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.network)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.network
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.shell)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.shell ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.ssh)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.ssh ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.text)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.text ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.console)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.console ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.console.completer)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.console.completer
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.event)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.event ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.i18n)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.i18n ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.interpolation)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.interpolation ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.io)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.io ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.notification)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.notification ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.parser)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.parser ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.parser.visitor)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.parser.visitor ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.registry)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.registry ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.shell)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.shell ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.terminal)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.terminal ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.vfs)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.vfs ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.vfs.config)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.vfs.config ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.vfs.provider.meta)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.vfs.provider.meta
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.vfs.provider.meta.data)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.vfs.provider.meta.data
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.vfs.provider.meta.data.support)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.vfs.provider.meta.data.support
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.vfs.selector)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.vfs.selector ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.vfs.support)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.vfs.support ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.application)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.application
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.branding)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.branding ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.builder)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.builder ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.completer)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.completer
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.config)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.config ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.meta)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.meta ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.plugin)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.plugin ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.plugin.activation)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.plugin.activation
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.plugin.bundle)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.plugin.bundle
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.registry)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.registry ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.scope)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.scope ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.shell)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.shell ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.yarn)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.yarn ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.oro.text)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.oro.text ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.oro.text.regex)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.oro.text.regex ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core.commands)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core.commands
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core.sshd)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core.sshd
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core.vfs.mvn)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core.vfs.mvn
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.kernel.jaas.config ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.main.spi)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.kernel.main.spi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.version)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.kernel.version
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.interpolation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.interpolation
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.interpolation.object)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.interpolation.object
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.interpolation.os)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.interpolation.os
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.interpolation.reflection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.interpolation.reflection
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.interpolation.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.interpolation.util
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.util
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.util.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.util.io
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.util.reflection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.util.reflection
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.jsecurity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jsecurity
  </require>
  <require extend='false' filter='(&amp;(package=org.jsecurity.authc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jsecurity.authc
  </require>
  <require extend='false' filter='(&amp;(package=org.jsecurity.mgt)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jsecurity.mgt
  </require>
  <require extend='false' filter='(&amp;(package=org.jsecurity.subject)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jsecurity.subject
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j.helpers)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j.helpers ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.aop ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.aop.framework ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.annotation
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.annotation ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.service.importer)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.service.importer ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.wrapper/1.0.0.rc1' presentationname='Apache ServiceMix Kernel :: GShell Service Wrapper' symbolicname='org.apache.servicemix.kernel.gshell.wrapper' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.wrapper/1.0.0-rc1/org.apache.servicemix.kernel.gshell.wrapper-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    Provides the Service Wrapper GShell integration
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    323611
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Service Wrapper'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.wrapper'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.unix'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.linux'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.common.io,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.windows'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.macosx'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.all'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper)(version&gt;=1.0.0.rc1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.all)(version&gt;=1.0.0.rc1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.all
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.linux)(version&gt;=1.0.0.rc1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.linux
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.macosx)(version&gt;=1.0.0.rc1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.macosx
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.unix)(version&gt;=1.0.0.rc1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.unix
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.windows)(version&gt;=1.0.0.rc1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.windows
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.rc1
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.wrapper/1.0.0.m1' presentationname='ServiceMix Kernel :: GShell Service Wrapper' symbolicname='org.apache.servicemix.kernel.gshell.wrapper' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.wrapper/1.0-m1/org.apache.servicemix.kernel.gshell.wrapper-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    Provides the Service Wrapper GShell integration
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    322823
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix Kernel :: GShell Service Wrapper'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.wrapper'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.unix'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.linux'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.common.io,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.windows'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.macosx'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.all'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper)(version&gt;=1.0.0.m1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.all)(version&gt;=1.0.0.m1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.all
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.linux)(version&gt;=1.0.0.m1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.linux
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.macosx)(version&gt;=1.0.0.m1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.macosx
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.unix)(version&gt;=1.0.0.m1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.unix
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.windows)(version&gt;=1.0.0.m1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.windows
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m1
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.wrapper/1.0.0' presentationname='Apache ServiceMix Kernel :: GShell Service Wrapper' symbolicname='org.apache.servicemix.kernel.gshell.wrapper' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.wrapper/1.0.0/org.apache.servicemix.kernel.gshell.wrapper-1.0.0.jar' version='1.0.0'>
  <description>
    Provides the Service Wrapper GShell integration
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    323645
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Service Wrapper'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.wrapper'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.unix'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.linux'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.common.io,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.windows'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.macosx'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.all'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.all)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.all
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.linux)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.linux
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.macosx)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.macosx
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.unix)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.unix
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.windows)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.windows
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.wrapper/1.0.0.m2' presentationname='ServiceMix Kernel :: GShell Service Wrapper' symbolicname='org.apache.servicemix.kernel.gshell.wrapper' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.wrapper/1.0-m2/org.apache.servicemix.kernel.gshell.wrapper-1.0-m2.jar' version='1.0.0.m2'>
  <description>
    Provides the Service Wrapper GShell integration
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    322805
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix Kernel :: GShell Service Wrapper'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.wrapper'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.unix'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.linux'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.common.io,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.windows'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.macosx'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.all'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper)(version&gt;=1.0.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.all)(version&gt;=1.0.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.all
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.linux)(version&gt;=1.0.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.linux
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.macosx)(version&gt;=1.0.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.macosx
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.unix)(version&gt;=1.0.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.unix
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.windows)(version&gt;=1.0.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.windows
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m2
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.wrapper/1.0.0.rc2' presentationname='Apache ServiceMix Kernel :: GShell Service Wrapper' symbolicname='org.apache.servicemix.kernel.gshell.wrapper' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.wrapper/1.0.0-rc2/org.apache.servicemix.kernel.gshell.wrapper-1.0.0-rc2.jar' version='1.0.0.rc2'>
  <description>
    Provides the Service Wrapper GShell integration
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    323631
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Service Wrapper'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.wrapper'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.unix'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.linux'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.common.io,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.windows'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.macosx'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.all'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.all)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.all
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.linux)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.linux
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.macosx)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.macosx
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.unix)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.unix
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.windows)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.windows
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.rc2
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.wrapper/1.1.0' presentationname='Apache ServiceMix Kernel :: GShell Service Wrapper' symbolicname='org.apache.servicemix.kernel.gshell.wrapper' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.wrapper/1.1.0/org.apache.servicemix.kernel.gshell.wrapper-1.1.0.jar' version='1.1.0'>
  <description>
    Provides the Service Wrapper GShell integration
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    323500
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Service Wrapper'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.wrapper'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.unix'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.linux'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper'/>
    <p n='uses' v='org.apache.servicemix.kernel.gshell.core,org.apache.geronimo.gshell.io,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.windows'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.macosx'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.all'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.io)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.io ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.registry)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.registry ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.all)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.all
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.linux)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.linux
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.macosx)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.macosx
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.unix)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.unix
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.windows)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.windows
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.wrapper/1.0.0.m3' presentationname='Apache ServiceMix Kernel :: GShell Service Wrapper' symbolicname='org.apache.servicemix.kernel.gshell.wrapper' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.wrapper/1.0-m3/org.apache.servicemix.kernel.gshell.wrapper-1.0-m3.jar' version='1.0.0.m3'>
  <description>
    Provides the Service Wrapper GShell integration
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    323603
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Service Wrapper'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.wrapper'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.unix'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.linux'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.common.io,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.windows'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.macosx'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.wrapper.all'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper)(version&gt;=1.0.0.m3))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.all)(version&gt;=1.0.0.m3))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.all
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.linux)(version&gt;=1.0.0.m3))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.linux
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.macosx)(version&gt;=1.0.0.m3))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.macosx
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.unix)(version&gt;=1.0.0.m3))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.unix
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.wrapper.windows)(version&gt;=1.0.0.m3))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.wrapper.windows
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m3
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.features/1.0.0.m2' presentationname='ServiceMix Kernel :: GShell Features' symbolicname='org.apache.servicemix.kernel.gshell.features' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.features/1.0-m2/org.apache.servicemix.kernel.gshell.features-1.0-m2.jar' version='1.0.0.m2'>
  <description>
    Provides Features in GShell
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    23073
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix Kernel :: GShell Features'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.features'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features.internal'/>
    <p n='uses' v='org.apache.geronimo.gshell.obr,org.osgi.service.obr,org.osgi.framework,org.w3c.dom,org.apache.servicemix.gshell.features,org.springframework.osgi.context,org.apache.geronimo.gshell.command,javax.xml.parsers,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features.internal.commands'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.osgi.framework,org.apache.servicemix.gshell.features,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.obr)(version&gt;=1.0.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.obr ;version=1.0.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features)(version&gt;=1.0.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features ;version=1.0.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features.internal)(version&gt;=1.0.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features.internal.commands)(version&gt;=1.0.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features.internal.commands
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.features/1.0.0.m1' presentationname='ServiceMix Kernel :: GShell Features' symbolicname='org.apache.servicemix.kernel.gshell.features' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.features/1.0-m1/org.apache.servicemix.kernel.gshell.features-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    Provides Features in GShell
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    23114
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix Kernel :: GShell Features'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.features'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features.internal'/>
    <p n='uses' v='org.apache.geronimo.gshell.obr,org.osgi.service.obr,org.osgi.framework,org.w3c.dom,org.apache.servicemix.gshell.features,org.springframework.osgi.context,org.apache.geronimo.gshell.command,javax.xml.parsers,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features.internal.commands'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.osgi.framework,org.apache.servicemix.gshell.features,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.obr)(version&gt;=1.0.0.m1))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.obr ;version=1.0.0.m1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features)(version&gt;=1.0.0.m1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features ;version=1.0.0.m1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features.internal)(version&gt;=1.0.0.m1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features.internal.commands)(version&gt;=1.0.0.m1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features.internal.commands
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m1
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.features/1.0.0.rc2' presentationname='Apache ServiceMix Kernel :: GShell Features' symbolicname='org.apache.servicemix.kernel.gshell.features' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.features/1.0.0-rc2/org.apache.servicemix.kernel.gshell.features-1.0.0-rc2.jar' version='1.0.0.rc2'>
  <description>
    Provides Features in GShell
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    33775
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Features'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.features'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features.internal'/>
    <p n='uses' v='org.xml.sax,org.osgi.framework,org.w3c.dom,org.apache.commons.logging,org.apache.servicemix.gshell.features,org.osgi.service.cm,org.springframework.osgi.context,javax.xml.parsers,org.osgi.service.prefs'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features.internal.commands'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.osgi.framework,org.apache.servicemix.gshell.features,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features.internal)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features.internal.commands)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features.internal.commands
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.features/1.0.0.m3' presentationname='Apache ServiceMix Kernel :: GShell Features' symbolicname='org.apache.servicemix.kernel.gshell.features' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.features/1.0-m3/org.apache.servicemix.kernel.gshell.features-1.0-m3.jar' version='1.0.0.m3'>
  <description>
    Provides Features in GShell
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    32622
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Features'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.features'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features.internal'/>
    <p n='uses' v='org.xml.sax,org.osgi.framework,org.w3c.dom,org.apache.commons.logging,org.apache.servicemix.gshell.features,org.osgi.service.cm,org.springframework.osgi.context,javax.xml.parsers,org.osgi.service.prefs'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features.internal.commands'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.osgi.framework,org.apache.servicemix.gshell.features,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features)(version&gt;=1.0.0.m3))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features ;version=1.0.0.m3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features.internal)(version&gt;=1.0.0.m3))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features.internal.commands)(version&gt;=1.0.0.m3))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features.internal.commands
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.m3
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.features/1.0.0' presentationname='Apache ServiceMix Kernel :: GShell Features' symbolicname='org.apache.servicemix.kernel.gshell.features' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.features/1.0.0/org.apache.servicemix.kernel.gshell.features-1.0.0.jar' version='1.0.0'>
  <description>
    Provides Features in GShell
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    33941
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Features'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.features'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features.internal'/>
    <p n='uses' v='org.xml.sax,org.osgi.framework,org.w3c.dom,org.apache.commons.logging,org.apache.servicemix.gshell.features,org.osgi.service.cm,org.springframework.osgi.context,javax.xml.parsers,org.osgi.service.prefs'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features.internal.commands'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.osgi.framework,org.apache.servicemix.gshell.features,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features.internal)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features.internal.commands)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features.internal.commands
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.features/1.0.0.rc1' presentationname='Apache ServiceMix Kernel :: GShell Features' symbolicname='org.apache.servicemix.kernel.gshell.features' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.features/1.0.0-rc1/org.apache.servicemix.kernel.gshell.features-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    Provides Features in GShell
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    32636
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Features'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.features'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features.internal'/>
    <p n='uses' v='org.xml.sax,org.osgi.framework,org.w3c.dom,org.apache.commons.logging,org.apache.servicemix.gshell.features,org.osgi.service.cm,org.springframework.osgi.context,javax.xml.parsers,org.osgi.service.prefs'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features.internal.commands'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.osgi.framework,org.apache.servicemix.gshell.features,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.features'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features)(version&gt;=1.0.0.rc1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features ;version=1.0.0.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features.internal)(version&gt;=1.0.0.rc1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.features.internal.commands)(version&gt;=1.0.0.rc1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.features.internal.commands
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.features/1.1.0' presentationname='Apache ServiceMix Kernel :: GShell Features' symbolicname='org.apache.servicemix.kernel.gshell.features' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.features/1.1.0/org.apache.servicemix.kernel.gshell.features-1.1.0.jar' version='1.1.0'>
  <description>
    Provides Features in GShell
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    62104
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Features'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.features'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.features'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.features.internal'/>
    <p n='uses' v='org.xml.sax,org.osgi.framework,org.w3c.dom,org.apache.commons.logging,org.osgi.service.cm,org.springframework.jmx.export.annotation,org.apache.servicemix.kernel.gshell.features,org.springframework.osgi.context,javax.xml.parsers,org.osgi.service.prefs,org.springframework.beans.factory,org.apache.servicemix.kernel.filemonitor'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.features.completers'/>
    <p n='uses' v='jline,org.apache.servicemix.kernel.gshell.features.management,org.apache.geronimo.gshell.console.completer'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.features.management'/>
    <p n='uses' v='javax.management,org.apache.commons.logging,org.springframework.jmx.export.assembler,org.springframework.jmx.export.metadata,org.springframework.jmx.export.annotation,org.apache.servicemix.kernel.gshell.features,javax.management.modelmbean,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.features.commands'/>
    <p n='uses' v='org.apache.servicemix.kernel.gshell.features,org.osgi.framework,org.apache.servicemix.kernel.gshell.core,org.apache.geronimo.gshell.io,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=jline)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package jline ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.console.completer)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.console.completer
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.io)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.io ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.registry)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.registry ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.filemonitor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.filemonitor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.features)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.features
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.features.commands)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.features.commands
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.features.completers)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.features.completers
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.features.internal)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.features.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.features.management)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.features.management
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.annotation ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.assembler)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.assembler ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.jmx.export.metadata)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.jmx.export.metadata ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.log/1.0.0' presentationname='Apache ServiceMix Kernel :: GShell Log Commands' symbolicname='org.apache.servicemix.kernel.gshell.log' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.log/1.0.0/org.apache.servicemix.kernel.gshell.log-1.0.0.jar' version='1.0.0'>
  <description>
    Provides the OSGi Log commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    36249
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Log Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.log'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.log.layout'/>
    <p n='uses' v='org.apache.log4j.spi,org.ops4j.pax.logging.spi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.log'/>
    <p n='uses' v='org.apache.servicemix.gshell.log.layout,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.osgi.framework,org.apache.geronimo.gshell.support,org.osgi.service.cm,org.ops4j.pax.logging.spi,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.log)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.log ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.log.layout)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.log.layout ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.ops4j.pax.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ops4j.pax.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.ops4j.pax.logging.spi)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.ops4j.pax.logging.spi ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.log/1.1.0' presentationname='Apache ServiceMix Kernel :: GShell Log Commands' symbolicname='org.apache.servicemix.kernel.gshell.log' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.log/1.1.0/org.apache.servicemix.kernel.gshell.log-1.1.0.jar' version='1.1.0'>
  <description>
    Provides the OSGi Log commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    40176
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Log Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.log'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.log.layout'/>
    <p n='uses' v='org.apache.log4j.spi,org.ops4j.pax.logging.spi'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.log'/>
    <p n='uses' v='org.apache.servicemix.kernel.gshell.log.layout,org.apache.geronimo.gshell.command,org.osgi.framework,org.apache.servicemix.kernel.gshell.core,org.apache.geronimo.gshell.io,org.osgi.service.cm,org.apache.geronimo.gshell.clp,org.ops4j.pax.logging.spi'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.io)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.io ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.registry)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.registry ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.log)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.log ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.log.layout)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.log.layout
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.ops4j.pax.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ops4j.pax.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.ops4j.pax.logging.spi)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.ops4j.pax.logging.spi ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.log/1.0.0.rc2' presentationname='Apache ServiceMix Kernel :: GShell Log Commands' symbolicname='org.apache.servicemix.kernel.gshell.log' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.log/1.0.0-rc2/org.apache.servicemix.kernel.gshell.log-1.0.0-rc2.jar' version='1.0.0.rc2'>
  <description>
    Provides the OSGi Log commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    36216
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Log Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.log'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.log.layout'/>
    <p n='uses' v='org.apache.log4j.spi,org.ops4j.pax.logging.spi'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.log'/>
    <p n='uses' v='org.apache.servicemix.gshell.log.layout,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.osgi.framework,org.apache.geronimo.gshell.support,org.osgi.service.cm,org.ops4j.pax.logging.spi,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.log)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.log ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.log.layout)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.log.layout ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.ops4j.pax.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ops4j.pax.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.ops4j.pax.logging.spi)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.ops4j.pax.logging.spi ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.log/1.0.0.rc1' presentationname='Apache ServiceMix Kernel :: GShell Log Commands' symbolicname='org.apache.servicemix.kernel.gshell.log' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.log/1.0.0-rc1/org.apache.servicemix.kernel.gshell.log-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    Provides the OSGi Log commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    36284
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Log Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.log'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.log.layout'/>
    <p n='uses' v='org.apache.log4j.spi,org.ops4j.pax.logging.spi'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.log'/>
    <p n='uses' v='org.apache.servicemix.gshell.log.layout,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.osgi.framework,org.apache.geronimo.gshell.support,org.osgi.service.cm,org.ops4j.pax.logging.spi,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.log)(version&gt;=1.0.0.rc1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.log ;version=1.0.0.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.log.layout)(version&gt;=1.0.0.rc1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.log.layout ;version=1.0.0.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.ops4j.pax.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.ops4j.pax.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.ops4j.pax.logging.spi)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.ops4j.pax.logging.spi ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.log/1.0.0.m3' presentationname='Apache ServiceMix Kernel :: GShell Log Commands' symbolicname='org.apache.servicemix.kernel.gshell.log' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.log/1.0-m3/org.apache.servicemix.kernel.gshell.log-1.0-m3.jar' version='1.0.0.m3'>
  <description>
    Provides the OSGi Log commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    36259
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Log Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.log'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.log.layout'/>
    <p n='uses' v='org.apache.log4j.spi,org.ops4j.pax.logging.spi'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.gshell.log'/>
    <p n='uses' v='org.apache.servicemix.gshell.log.layout,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.osgi.framework,org.apache.geronimo.gshell.support,org.osgi.service.cm,org.ops4j.pax.logging.spi,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.log)(version&gt;=1.0.0.m3))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.log ;version=1.0.0.m3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.gshell.log.layout)(version&gt;=1.0.0.m3))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.gshell.log.layout ;version=1.0.0.m3
  </require>
  <require extend='false' filter='(&amp;(package=org.ops4j.pax.logging.spi)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.ops4j.pax.logging.spi ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.admin/1.1.0' presentationname='Apache ServiceMix Kernel :: GShell Admin' symbolicname='org.apache.servicemix.kernel.gshell.admin' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.admin/1.1.0/org.apache.servicemix.kernel.gshell.admin-1.1.0.jar' version='1.1.0'>
  <description>
    Provides administration commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    60841
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Admin'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.admin'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.admin.internal'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.apache.commons.logging,org.apache.geronimo.gshell.io,org.osgi.service.prefs,org.springframework.beans.factory,org.apache.servicemix.kernel.gshell.admin'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.admin.bin'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.admin.internal.commands'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.command,org.apache.servicemix.kernel.gshell.core,org.apache.geronimo.gshell.io,org.apache.geronimo.gshell.clp,org.apache.servicemix.kernel.gshell.admin'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.admin.etc'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.admin'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.io)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.io ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.shell)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.shell ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.registry)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.registry ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.admin)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.admin ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.admin.bin)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.admin.bin
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.admin.etc)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.admin.etc
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.admin.internal)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.admin.internal
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.admin.internal.commands)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.admin.internal.commands
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.osgi/1.0.0.m2' presentationname='ServiceMix Kernel :: GShell OSGi Commands' symbolicname='org.apache.servicemix.kernel.gshell.osgi' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.osgi/1.0-m2/org.apache.servicemix.kernel.gshell.osgi-1.0-m2.jar' version='1.0.0.m2'>
  <description>
    Provides the OSGi GShell commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    33212
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix Kernel :: GShell OSGi Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.osgi'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.osgi'/>
    <p n='uses' v='org.osgi.service.startlevel,org.apache.geronimo.gshell.branding,org.osgi.framework,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.clp,org.osgi.service.packageadmin,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.ansi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.ansi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.branding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.branding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.osgi)(version&gt;=1.0.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.osgi ;version=1.0.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.osgi/1.0.0.m1' presentationname='ServiceMix Kernel :: GShell OSGi Commands' symbolicname='org.apache.servicemix.kernel.gshell.osgi' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.osgi/1.0-m1/org.apache.servicemix.kernel.gshell.osgi-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    Provides the OSGi GShell commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    32981
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix Kernel :: GShell OSGi Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.osgi'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.osgi'/>
    <p n='uses' v='org.osgi.service.startlevel,org.apache.geronimo.gshell.branding,org.osgi.framework,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.clp,org.osgi.service.packageadmin,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.ansi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.ansi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.branding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.branding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.osgi)(version&gt;=1.0.0.m1))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.osgi ;version=1.0.0.m1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.osgi/1.0.0.m3' presentationname='Apache ServiceMix Kernel :: GShell OSGi Commands' symbolicname='org.apache.servicemix.kernel.gshell.osgi' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.osgi/1.0-m3/org.apache.servicemix.kernel.gshell.osgi-1.0-m3.jar' version='1.0.0.m3'>
  <description>
    Provides the OSGi GShell commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    31658
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell OSGi Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.osgi'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.osgi'/>
    <p n='uses' v='org.osgi.service.packageadmin,org.osgi.service.startlevel,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.osgi.framework,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.osgi)(version&gt;=1.0.0.m3))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.osgi ;version=1.0.0.m3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.osgi/1.0.0.rc1' presentationname='Apache ServiceMix Kernel :: GShell OSGi Commands' symbolicname='org.apache.servicemix.kernel.gshell.osgi' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.osgi/1.0.0-rc1/org.apache.servicemix.kernel.gshell.osgi-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    Provides the OSGi GShell commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    31665
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell OSGi Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.osgi'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.osgi'/>
    <p n='uses' v='org.osgi.service.packageadmin,org.osgi.service.startlevel,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.osgi.framework,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.osgi)(version&gt;=1.0.0.rc1))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.osgi ;version=1.0.0.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.osgi/1.0.0.rc2' presentationname='Apache ServiceMix Kernel :: GShell OSGi Commands' symbolicname='org.apache.servicemix.kernel.gshell.osgi' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.osgi/1.0.0-rc2/org.apache.servicemix.kernel.gshell.osgi-1.0.0-rc2.jar' version='1.0.0.rc2'>
  <description>
    Provides the OSGi GShell commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    31609
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell OSGi Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.osgi'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.osgi'/>
    <p n='uses' v='org.osgi.service.packageadmin,org.osgi.service.startlevel,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.osgi.framework,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.osgi)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.osgi ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.osgi/1.1.0' presentationname='Apache ServiceMix Kernel :: GShell OSGi Commands' symbolicname='org.apache.servicemix.kernel.gshell.osgi' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.osgi/1.1.0/org.apache.servicemix.kernel.gshell.osgi-1.1.0.jar' version='1.1.0'>
  <description>
    Provides the OSGi GShell commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    47630
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell OSGi Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.osgi'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.osgi'/>
    <p n='uses' v='org.osgi.service.startlevel,org.springframework.osgi.extender.event,org.osgi.framework,org.apache.commons.logging,org.springframework.osgi.context.event,org.springframework.osgi.service.importer.event,org.apache.geronimo.gshell.clp,org.osgi.service.packageadmin,org.springframework.osgi.context,org.apache.geronimo.gshell.command,org.apache.servicemix.kernel.gshell.core,org.apache.geronimo.gshell.io,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.io)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.io ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.registry)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.registry ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.osgi)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.osgi ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context.event)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context.event ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.extender.event)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.extender.event ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.service.importer.event)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.service.importer.event
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.0.m2
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.osgi/1.0.0' presentationname='Apache ServiceMix Kernel :: GShell OSGi Commands' symbolicname='org.apache.servicemix.kernel.gshell.osgi' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.osgi/1.0.0/org.apache.servicemix.kernel.gshell.osgi-1.0.0.jar' version='1.0.0'>
  <description>
    Provides the OSGi GShell commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    31681
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell OSGi Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.osgi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.osgi'/>
    <p n='uses' v='org.osgi.service.packageadmin,org.osgi.service.startlevel,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.osgi.framework,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.osgi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.osgi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.startlevel)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.startlevel ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.packages/1.1.0' presentationname='Apache ServiceMix Kernel :: GShell PackageAdmin Commands' symbolicname='org.apache.servicemix.kernel.gshell.packages' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.packages/1.1.0/org.apache.servicemix.kernel.gshell.packages-1.1.0.jar' version='1.1.0'>
  <description>
    Provides the PackageAdmin GShell commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17812
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell PackageAdmin Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.packages'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.packages'/>
    <p n='uses' v='org.osgi.service.packageadmin,org.osgi.framework,org.apache.servicemix.kernel.gshell.core,org.apache.geronimo.gshell.io,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.io)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.io ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.registry)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.registry ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.packages)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.packages
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.packageadmin)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.packageadmin ;version=1.2.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.config/1.1.0' presentationname='Apache ServiceMix Kernel :: GShell ConfigAdmin Commands' symbolicname='org.apache.servicemix.kernel.gshell.config' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.config/1.1.0/org.apache.servicemix.kernel.gshell.config-1.1.0.jar' version='1.1.0'>
  <description>
    Provides the ConfigAdmin GShell commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26785
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell ConfigAdmin Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.config'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.config'/>
    <p n='uses' v='org.apache.geronimo.gshell.command,org.osgi.framework,org.apache.servicemix.kernel.gshell.core,org.apache.geronimo.gshell.io,org.apache.geronimo.gshell.clp,org.osgi.service.cm'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.config.completers'/>
    <p n='uses' v='javax.annotation,jline,org.osgi.service.cm,org.apache.geronimo.gshell.console.completer'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=jline)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package jline ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.console.completer)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.console.completer
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.io)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.io ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.registry)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.registry ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.config)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.config ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.config.completers)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.config.completers
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.obr/1.0.0.m3' presentationname='Apache ServiceMix Kernel :: GShell OBR Commands' symbolicname='org.apache.servicemix.kernel.gshell.obr' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.obr/1.0-m3/org.apache.servicemix.kernel.gshell.obr-1.0-m3.jar' version='1.0.0.m3'>
  <description>
    Provides the OBR GShell commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28238
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell OBR Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.obr'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.obr'/>
    <p n='uses' v='org.osgi.service.obr,org.osgi.framework,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.obr)(version&gt;=1.0.0.m3))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.obr ;version=1.0.0.m3
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.obr/1.0.0.m1' presentationname='ServiceMix Kernel :: GShell OBR Commands' symbolicname='org.apache.servicemix.kernel.gshell.obr' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.obr/1.0-m1/org.apache.servicemix.kernel.gshell.obr-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    Provides the OBR GShell commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26159
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix Kernel :: GShell OBR Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.obr'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.obr'/>
    <p n='uses' v='org.osgi.service.obr,org.osgi.framework,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.obr)(version&gt;=1.0.0.m1))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.obr ;version=1.0.0.m1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.obr/1.0.0.rc2' presentationname='Apache ServiceMix Kernel :: GShell OBR Commands' symbolicname='org.apache.servicemix.kernel.gshell.obr' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.obr/1.0.0-rc2/org.apache.servicemix.kernel.gshell.obr-1.0.0-rc2.jar' version='1.0.0.rc2'>
  <description>
    Provides the OBR GShell commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28240
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell OBR Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.obr'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.obr'/>
    <p n='uses' v='org.osgi.service.obr,org.osgi.framework,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.obr)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.obr ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.obr/1.0.0' presentationname='Apache ServiceMix Kernel :: GShell OBR Commands' symbolicname='org.apache.servicemix.kernel.gshell.obr' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.obr/1.0.0/org.apache.servicemix.kernel.gshell.obr-1.0.0.jar' version='1.0.0'>
  <description>
    Provides the OBR GShell commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28266
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell OBR Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.obr'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.obr'/>
    <p n='uses' v='org.osgi.service.obr,org.osgi.framework,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.obr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.obr/1.0.0.m2' presentationname='ServiceMix Kernel :: GShell OBR Commands' symbolicname='org.apache.servicemix.kernel.gshell.obr' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.obr/1.0-m2/org.apache.servicemix.kernel.gshell.obr-1.0-m2.jar' version='1.0.0.m2'>
  <description>
    Provides the OBR GShell commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26124
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix Kernel :: GShell OBR Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.obr'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.obr'/>
    <p n='uses' v='org.osgi.service.obr,org.osgi.framework,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.obr)(version&gt;=1.0.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.obr ;version=1.0.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.obr/1.0.0.rc1' presentationname='Apache ServiceMix Kernel :: GShell OBR Commands' symbolicname='org.apache.servicemix.kernel.gshell.obr' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.obr/1.0.0-rc1/org.apache.servicemix.kernel.gshell.obr-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    Provides the OBR GShell commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28244
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell OBR Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.obr'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.obr'/>
    <p n='uses' v='org.osgi.service.obr,org.osgi.framework,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.obr)(version&gt;=1.0.0.rc1))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.obr ;version=1.0.0.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.obr/1.1.0' presentationname='Apache ServiceMix Kernel :: GShell OBR Commands' symbolicname='org.apache.servicemix.kernel.gshell.obr' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.obr/1.1.0/org.apache.servicemix.kernel.gshell.obr-1.1.0.jar' version='1.1.0'>
  <description>
    Provides the OBR GShell commands
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    34220
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell OBR Commands'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.obr'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.obr'/>
    <p n='uses' v='org.osgi.service.obr,org.osgi.framework,org.apache.servicemix.kernel.gshell.core,org.apache.geronimo.gshell.io,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.io)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.io ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.registry)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.registry ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.obr)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.obr ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.obr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.obr ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.core/1.0.0.rc1' presentationname='Apache ServiceMix Kernel :: GShell Core' symbolicname='org.apache.servicemix.kernel.gshell.core' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.core/1.0.0-rc1/org.apache.servicemix.kernel.gshell.core-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    Provides the OSGi GShell integration
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    982047
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Core'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.core'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.registry'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.descriptor,org.codehaus.plexus,org.apache.geronimo.gshell.plugin'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.settings'/>
    <p n='uses' v='org.apache.geronimo.gshell.model.common,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.model.marshal'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.branding'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.ansi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp.setter,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.stream'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.whisper.message,org.apache.mina.common,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.timeout'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.slf4j,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.logging'/>
    <p n='uses' v='org.codehaus.plexus.logging,org.slf4j,org.apache.geronimo.gshell.parser'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.support.plexus'/>
    <p n='uses' v='org.codehaus.plexus.component.repository.exception,org.codehaus.plexus'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.common'/>
    <p n='uses' v='com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.command.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.commands.builtins'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.layout,org.apache.geronimo.gshell,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command,org.slf4j,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.console'/>
    <p n='uses' v='org.apache.geronimo.gshell.branding,org.codehaus.plexus.component.repository,org.codehaus.plexus,org.codehaus.plexus.component.factory,org.codehaus.plexus.component.annotations,org.codehaus.plexus.classworlds.realm,org.slf4j,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.descriptor'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream.annotations,com.thoughtworks.xstream,org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.request'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.auth'/>
    <p n='uses' v='javax.security.auth.spi,javax.security.auth.login,org.slf4j,javax.security.auth,javax.security.auth.callback,org.apache.geronimo.gshell.remote.jaas'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.ssl'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.ssl,org.apache.mina.common,org.apache.geronimo.gshell.whisper.transport.tcp,org.apache.mina.filter,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base,org.apache.servicemix.kernel.jaas.config,javax.net.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.crypto'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,javax.crypto'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.vm'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.ssl'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,javax.net.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.i18n'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.commands.utils'/>
    <p n='uses' v='org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.common.io,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.prefs'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.codehaus.plexus.component.repository.exception,org.codehaus.plexus,org.apache.geronimo.gshell.common,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.message,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.expression'/>
    <p n='uses' v='org.apache.geronimo.gshell.command,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout.model'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.common.tostring,com.thoughtworks.xstream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.command'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.common.tostring,org.slf4j.helpers,org.slf4j,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.rfile'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.shell'/>
    <p n='uses' v='org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.shell,org.apache.mina.common,org.apache.geronimo.gshell.whisper.stream,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.remote.server.timeout,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common,org.apache.mina.handler.demux,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.remote,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.remote.server.handler,org.codehaus.plexus.classworlds'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.marshal'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.security'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.loader'/>
    <p n='uses' v='org.apache.maven.artifact.repository,org.apache.maven.artifact.repository.layout,org.codehaus.plexus.component.repository.exception,org.apache.geronimo.gshell,org.codehaus.plexus,org.apache.geronimo.gshell.model.application,org.apache.geronimo.gshell.support.plexus,org.slf4j,org.apache.geronimo.gshell.command,org.codehaus.plexus.classworlds'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.filter.executor,org.apache.mina.common,org.apache.geronimo.gshell.whisper.stream,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.whisper.request,org.apache.mina.filter,org.apache.mina.filter.codec.serialization,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.jaas'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.common.tostring,org.slf4j,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.application'/>
    <p n='uses' v='org.apache.geronimo.gshell.model.common,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.model.marshal,org.apache.geronimo.gshell.model.layout'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common'/>
    <p n='uses' v='org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout.loader'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.layout.model,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.message'/>
    <p n='uses' v='org.apache.mina.handler.demux,org.apache.geronimo.gshell.common.tostring,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.url'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common.io'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring.bin'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.support'/>
    <p n='uses' v='org.springframework.osgi.context,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.slf4j,org.osgi.framework,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.auth'/>
    <p n='uses' v='javax.security.auth.login,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.message,javax.security.auth.spi,org.apache.geronimo.gshell.common.tostring,org.slf4j,javax.security.auth,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.parser'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.proxy'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell,org.apache.geronimo.gshell.whisper.stream,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.console,org.apache.geronimo.gshell.remote,org.apache.geronimo.gshell.command,org.slf4j,org.apache.geronimo.gshell.remote.client'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.plugin'/>
    <p n='uses' v='org.codehaus.plexus.component.repository,org.codehaus.plexus.configuration,org.codehaus.plexus.configuration.xml,org.codehaus.plexus,org.codehaus.plexus.component.discovery,org.codehaus.plexus.classworlds.realm,org.codehaus.plexus.component.annotations,com.thoughtworks.xstream,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.descriptor'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.message'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.util'/>
    <p n='uses' v='org.apache.mina.common,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.lookup'/>
    <p n='uses' v='org.codehaus.plexus.component.factory,org.codehaus.plexus.classworlds.realm,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.repository.exception,org.codehaus.plexus.component.repository,org.slf4j,org.apache.geronimo.gshell.command,org.codehaus.plexus'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout'/>
    <p n='uses' v='org.apache.geronimo.gshell.layout.loader,org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.plugin'/>
    <p n='uses' v='org.apache.geronimo.gshell.model.common,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.model.marshal'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.tcp'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.mina.transport.socket.nio,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.security,org.codehaus.plexus.component.discovery,org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.logging,org.apache.geronimo.gshell.console,org.slf4j,org.codehaus.plexus.classworlds,org.apache.geronimo.gshell.parser,org.apache.geronimo.gshell.plugin,org.apache.geronimo.gshell.lookup,org.apache.geronimo.gshell.layout,org.codehaus.plexus,org.apache.geronimo.gshell.ansi,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.expression,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.common.tostring,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring.etc'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp.setter'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.ansi'/>
    <p n='uses' v='org.apache.geronimo.gshell.i18n'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.slf4j,org.apache.geronimo.gshell.remote.client.auth,javax.security.auth,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.remote.message'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp.handler,org.apache.geronimo.gshell.clp.setter'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.layout'/>
    <p n='uses' v='org.apache.geronimo.gshell.model.common,com.thoughtworks.xstream.annotations'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.remote.server,org.osgi.framework,org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.console,org.slf4j,org.apache.geronimo.gshell.support,org.apache.geronimo.gshell.parser,org.springframework.beans.factory,org.apache.geronimo.gshell.layout,org.apache.geronimo.gshell,org.apache.geronimo.gshell.ansi,org.apache.servicemix.kernel.main.spi,org.springframework.aop,org.apache.geronimo.gshell.clp,org.springframework.osgi.context,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,javax.security.auth.login,org.apache.geronimo.gshell.remote.server,org.apache.geronimo.gshell.remote.server.timeout,org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.remote.jaas,org.apache.geronimo.gshell.whisper.message,org.slf4j,org.codehaus.plexus.classworlds,org.apache.geronimo.gshell.remote.crypto,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback,org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.lookup,org.apache.mina.common,org.apache.geronimo.gshell,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.codehaus.plexus.component.annotations,org.codehaus.plexus.classworlds.realm,org.apache.geronimo.gshell.remote,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.spring,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client'/>
    <p n='uses' v='javax.security.auth.login,org.apache.geronimo.gshell.remote.jaas,org.apache.geronimo.gshell.common,org.apache.mina.handler.demux,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.console,org.slf4j,org.apache.geronimo.gshell.support,org.apache.geronimo.gshell.remote.client.auth,org.apache.geronimo.gshell.remote.client.proxy,org.apache.geronimo.gshell.remote.crypto,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback,org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.apache.geronimo.gshell,org.apache.geronimo.gshell.remote.client.handler,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.clp,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.command,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.annotations
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.ansi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.ansi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.branding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.branding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp.setter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp.setter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.builtins)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.builtins
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.tostring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.tostring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.console)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.console
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.descriptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.descriptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout.loader)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout.loader
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.loader)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.loader
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.lookup)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.lookup
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.application)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.application
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.layout)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.layout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.marshal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.marshal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.plugin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.plugin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.settings)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.settings
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.plugin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.plugin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.jaas)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.jaas
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.timeout)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.timeout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.shell)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.shell
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring.bin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring.bin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring.etc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring.etc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support.plexus)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support.plexus
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.url
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.request)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.request
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.rfile)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.rfile
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.base)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.base
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.tcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.tcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.vm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.vm
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.maven.artifact.repository)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.maven.artifact.repository
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.maven.artifact.repository.layout)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.maven.artifact.repository.layout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.serialization)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.codec.serialization
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.executor)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.executor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.demux)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.handler.demux
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.transport.socket.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.transport.vmpipe
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=1.0.0.rc1))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.kernel.jaas.config ;version=1.0.0.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.main.spi)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.kernel.main.spi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.classworlds)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.classworlds
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.classworlds.realm)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.classworlds.realm
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.annotations
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.composition)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.composition
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.configurator)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.configurator
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.discovery)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.discovery
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.manager)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.manager
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.repository)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.repository
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.repository.exception)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.repository.exception
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.configuration.source)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.configuration.source
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.configuration.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.configuration.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.context
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.lifecycle.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.lifecycle.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j.helpers)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j.helpers ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.aop ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.aop.framework ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0.m2
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.core/1.0.0.m3' presentationname='Apache ServiceMix Kernel :: GShell Core' symbolicname='org.apache.servicemix.kernel.gshell.core' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.core/1.0-m3/org.apache.servicemix.kernel.gshell.core-1.0-m3.jar' version='1.0.0.m3'>
  <description>
    Provides the OSGi GShell integration
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    980627
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Core'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.core'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.registry'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.descriptor,org.codehaus.plexus,org.apache.geronimo.gshell.plugin'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.settings'/>
    <p n='uses' v='org.apache.geronimo.gshell.model.common,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.model.marshal'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.branding'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.ansi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp.setter,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.stream'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.whisper.message,org.apache.mina.common,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.timeout'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.slf4j,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.logging'/>
    <p n='uses' v='org.codehaus.plexus.logging,org.slf4j,org.apache.geronimo.gshell.parser'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.support.plexus'/>
    <p n='uses' v='org.codehaus.plexus.component.repository.exception,org.codehaus.plexus'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.common'/>
    <p n='uses' v='com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.command.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.commands.builtins'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.layout,org.apache.geronimo.gshell,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command,org.slf4j,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.console'/>
    <p n='uses' v='org.apache.geronimo.gshell.branding,org.codehaus.plexus.component.repository,org.codehaus.plexus,org.codehaus.plexus.component.factory,org.codehaus.plexus.component.annotations,org.codehaus.plexus.classworlds.realm,org.slf4j,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.descriptor'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream.annotations,com.thoughtworks.xstream,org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.request'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.auth'/>
    <p n='uses' v='javax.security.auth.spi,javax.security.auth.login,org.slf4j,javax.security.auth,javax.security.auth.callback,org.apache.geronimo.gshell.remote.jaas'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.ssl'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.ssl,org.apache.mina.common,org.apache.geronimo.gshell.whisper.transport.tcp,org.apache.mina.filter,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base,javax.net.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.crypto'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,javax.crypto'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.vm'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.ssl'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,javax.net.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.i18n'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.commands.utils'/>
    <p n='uses' v='org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.common.io,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support,org.apache.geronimo.gshell.spring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.prefs'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.codehaus.plexus.component.repository.exception,org.codehaus.plexus,org.apache.geronimo.gshell.common,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.message,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.expression'/>
    <p n='uses' v='org.apache.geronimo.gshell.command,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout.model'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.common.tostring,com.thoughtworks.xstream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.command'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.common.tostring,org.slf4j.helpers,org.slf4j,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.rfile'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.shell'/>
    <p n='uses' v='org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.shell,org.apache.mina.common,org.apache.geronimo.gshell.whisper.stream,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.remote.server.timeout,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common,org.apache.mina.handler.demux,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.remote,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.remote.server.handler,org.codehaus.plexus.classworlds'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.marshal'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.security'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.loader'/>
    <p n='uses' v='org.apache.maven.artifact.repository,org.apache.maven.artifact.repository.layout,org.codehaus.plexus.component.repository.exception,org.apache.geronimo.gshell,org.codehaus.plexus,org.apache.geronimo.gshell.model.application,org.apache.geronimo.gshell.support.plexus,org.slf4j,org.apache.geronimo.gshell.command,org.codehaus.plexus.classworlds'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.filter.executor,org.apache.mina.common,org.apache.geronimo.gshell.whisper.stream,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.whisper.request,org.apache.mina.filter,org.apache.mina.filter.codec.serialization,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.jaas'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.common.tostring,org.slf4j,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.application'/>
    <p n='uses' v='org.apache.geronimo.gshell.model.common,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.model.marshal,org.apache.geronimo.gshell.model.layout'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common'/>
    <p n='uses' v='org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout.loader'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.layout.model,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.message'/>
    <p n='uses' v='org.apache.mina.handler.demux,org.apache.geronimo.gshell.common.tostring,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.url'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common.io'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring.bin'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.support'/>
    <p n='uses' v='org.springframework.osgi.context,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.slf4j,org.osgi.framework,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.auth'/>
    <p n='uses' v='javax.security.auth.login,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.message,javax.security.auth.spi,org.apache.geronimo.gshell.common.tostring,org.slf4j,javax.security.auth,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.parser'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.proxy'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell,org.apache.geronimo.gshell.whisper.stream,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.console,org.apache.geronimo.gshell.remote,org.apache.geronimo.gshell.command,org.slf4j,org.apache.geronimo.gshell.remote.client'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.plugin'/>
    <p n='uses' v='org.codehaus.plexus.component.repository,org.codehaus.plexus.configuration,org.codehaus.plexus.configuration.xml,org.codehaus.plexus,org.codehaus.plexus.component.discovery,org.codehaus.plexus.classworlds.realm,org.codehaus.plexus.component.annotations,com.thoughtworks.xstream,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.descriptor'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.message'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.util'/>
    <p n='uses' v='org.apache.mina.common,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.lookup'/>
    <p n='uses' v='org.codehaus.plexus.component.factory,org.codehaus.plexus.classworlds.realm,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.repository.exception,org.codehaus.plexus.component.repository,org.slf4j,org.apache.geronimo.gshell.command,org.codehaus.plexus'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout'/>
    <p n='uses' v='org.apache.geronimo.gshell.layout.loader,org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.plugin'/>
    <p n='uses' v='org.apache.geronimo.gshell.model.common,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.model.marshal'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.tcp'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.mina.transport.socket.nio,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.security,org.codehaus.plexus.component.discovery,org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.logging,org.apache.geronimo.gshell.console,org.slf4j,org.codehaus.plexus.classworlds,org.apache.geronimo.gshell.parser,org.apache.geronimo.gshell.plugin,org.apache.geronimo.gshell.lookup,org.apache.geronimo.gshell.layout,org.codehaus.plexus,org.apache.geronimo.gshell.ansi,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.expression,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.common.tostring,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring.etc'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp.setter'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.ansi'/>
    <p n='uses' v='org.apache.geronimo.gshell.i18n'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.slf4j,org.apache.geronimo.gshell.remote.client.auth,javax.security.auth,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.remote.message'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp.handler,org.apache.geronimo.gshell.clp.setter'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.layout'/>
    <p n='uses' v='org.apache.geronimo.gshell.model.common,com.thoughtworks.xstream.annotations'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.remote.server,org.osgi.framework,org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.console,org.apache.geronimo.gshell.common.io,org.slf4j,org.apache.geronimo.gshell.support,org.apache.geronimo.gshell.parser,org.springframework.beans.factory,org.apache.geronimo.gshell.layout,org.apache.geronimo.gshell,org.apache.geronimo.gshell.ansi,org.apache.servicemix.kernel.main.spi,org.springframework.aop,org.apache.geronimo.gshell.clp,org.springframework.osgi.context,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,javax.security.auth.login,org.apache.geronimo.gshell.remote.server,org.apache.geronimo.gshell.remote.server.timeout,org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.remote.jaas,org.apache.geronimo.gshell.whisper.message,org.slf4j,org.codehaus.plexus.classworlds,org.apache.geronimo.gshell.remote.crypto,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback,org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.lookup,org.apache.mina.common,org.apache.geronimo.gshell,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.codehaus.plexus.component.annotations,org.codehaus.plexus.classworlds.realm,org.apache.geronimo.gshell.remote,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.spring,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client'/>
    <p n='uses' v='javax.security.auth.login,org.apache.geronimo.gshell.remote.jaas,org.apache.geronimo.gshell.common,org.apache.mina.handler.demux,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.console,org.slf4j,org.apache.geronimo.gshell.support,org.apache.geronimo.gshell.remote.client.auth,org.apache.geronimo.gshell.remote.client.proxy,org.apache.geronimo.gshell.remote.crypto,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback,org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.apache.geronimo.gshell,org.apache.geronimo.gshell.remote.client.handler,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.clp,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.command,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.annotations
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.ansi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.ansi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.branding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.branding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp.setter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp.setter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.builtins)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.builtins
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.tostring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.tostring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.console)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.console
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.descriptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.descriptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout.loader)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout.loader
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.loader)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.loader
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.lookup)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.lookup
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.application)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.application
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.layout)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.layout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.marshal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.marshal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.plugin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.plugin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.settings)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.settings
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.plugin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.plugin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.jaas)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.jaas
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.timeout)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.timeout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.shell)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.shell
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring.bin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring.bin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring.etc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring.etc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support.plexus)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support.plexus
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.url
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.request)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.request
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.rfile)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.rfile
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.base)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.base
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.tcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.tcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.vm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.vm
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.maven.artifact.repository)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.maven.artifact.repository
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.maven.artifact.repository.layout)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.maven.artifact.repository.layout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.serialization)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.codec.serialization
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.executor)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.executor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.demux)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.handler.demux
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.transport.socket.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.transport.vmpipe
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.main.spi)(version&gt;=1.0.0.m3))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.kernel.main.spi ;version=1.0.0.m3
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.classworlds)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.classworlds
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.classworlds.realm)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.classworlds.realm
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.annotations
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.composition)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.composition
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.configurator)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.configurator
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.discovery)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.discovery
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.manager)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.manager
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.repository)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.repository
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.repository.exception)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.repository.exception
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.configuration.source)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.configuration.source
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.configuration.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.configuration.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.context
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.lifecycle.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.lifecycle.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j.helpers)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j.helpers ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.aop ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.core/1.0.0.rc2' presentationname='Apache ServiceMix Kernel :: GShell Core' symbolicname='org.apache.servicemix.kernel.gshell.core' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.core/1.0.0-rc2/org.apache.servicemix.kernel.gshell.core-1.0.0-rc2.jar' version='1.0.0.rc2'>
  <description>
    Provides the OSGi GShell integration
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    997469
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Core'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.core'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.registry'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.descriptor,org.codehaus.plexus,org.apache.geronimo.gshell.plugin'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.settings'/>
    <p n='uses' v='org.apache.geronimo.gshell.model.common,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.model.marshal'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.branding'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.ansi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp.setter,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.stream'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.whisper.message,org.apache.mina.common,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.timeout'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.slf4j,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.logging'/>
    <p n='uses' v='org.codehaus.plexus.logging,org.slf4j,org.apache.geronimo.gshell.parser'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.support.plexus'/>
    <p n='uses' v='org.codehaus.plexus.component.repository.exception,org.codehaus.plexus'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.common'/>
    <p n='uses' v='com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.command.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.commands.builtins'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.layout,org.apache.geronimo.gshell,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command,org.slf4j,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.console'/>
    <p n='uses' v='org.apache.geronimo.gshell.branding,org.codehaus.plexus.component.repository,org.codehaus.plexus,org.codehaus.plexus.component.factory,org.codehaus.plexus.component.annotations,org.codehaus.plexus.classworlds.realm,org.slf4j,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.descriptor'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream.annotations,com.thoughtworks.xstream,org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.request'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.auth'/>
    <p n='uses' v='javax.security.auth.spi,javax.security.auth.login,org.slf4j,javax.security.auth,javax.security.auth.callback,org.apache.geronimo.gshell.remote.jaas'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.ssl'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.ssl,org.apache.mina.common,org.apache.geronimo.gshell.whisper.transport.tcp,org.apache.mina.filter,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base,org.apache.servicemix.kernel.jaas.config,javax.net.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.crypto'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,javax.crypto'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.vm'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.ssl'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,javax.net.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.i18n'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.commands.utils'/>
    <p n='uses' v='org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.common.io,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.prefs'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.codehaus.plexus.component.repository.exception,org.codehaus.plexus,org.apache.geronimo.gshell.common,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.message,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.expression'/>
    <p n='uses' v='org.apache.geronimo.gshell.command,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout.model'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.common.tostring,com.thoughtworks.xstream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.command'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.common.tostring,org.slf4j.helpers,org.slf4j,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.rfile'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.shell'/>
    <p n='uses' v='org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.shell,org.apache.mina.common,org.apache.geronimo.gshell.whisper.stream,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.remote.server.timeout,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common,org.apache.mina.handler.demux,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.remote,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.remote.server.handler,org.codehaus.plexus.classworlds'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.marshal'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.security'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.loader'/>
    <p n='uses' v='org.apache.maven.artifact.repository,org.apache.maven.artifact.repository.layout,org.codehaus.plexus.component.repository.exception,org.apache.geronimo.gshell,org.codehaus.plexus,org.apache.geronimo.gshell.model.application,org.apache.geronimo.gshell.support.plexus,org.slf4j,org.apache.geronimo.gshell.command,org.codehaus.plexus.classworlds'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.filter.executor,org.apache.mina.common,org.apache.geronimo.gshell.whisper.stream,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.whisper.request,org.apache.mina.filter,org.apache.mina.filter.codec.serialization,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.jaas'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.common.tostring,org.slf4j,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.application'/>
    <p n='uses' v='org.apache.geronimo.gshell.model.common,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.model.marshal,org.apache.geronimo.gshell.model.layout'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common'/>
    <p n='uses' v='org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout.loader'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.layout.model,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.message'/>
    <p n='uses' v='org.apache.mina.handler.demux,org.apache.geronimo.gshell.common.tostring,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.url'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common.io'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring.bin'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.support'/>
    <p n='uses' v='org.springframework.osgi.context,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.slf4j,org.osgi.framework,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.auth'/>
    <p n='uses' v='javax.security.auth.login,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.message,javax.security.auth.spi,org.apache.geronimo.gshell.common.tostring,org.slf4j,javax.security.auth,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.parser'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.proxy'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell,org.apache.geronimo.gshell.whisper.stream,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.console,org.apache.geronimo.gshell.remote,org.apache.geronimo.gshell.command,org.slf4j,org.apache.geronimo.gshell.remote.client'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.plugin'/>
    <p n='uses' v='org.codehaus.plexus.component.repository,org.codehaus.plexus.configuration,org.codehaus.plexus.configuration.xml,org.codehaus.plexus,org.codehaus.plexus.component.discovery,org.codehaus.plexus.classworlds.realm,org.codehaus.plexus.component.annotations,com.thoughtworks.xstream,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.descriptor'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.message'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.util'/>
    <p n='uses' v='org.apache.mina.common,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.lookup'/>
    <p n='uses' v='org.codehaus.plexus.component.factory,org.codehaus.plexus.classworlds.realm,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.repository.exception,org.codehaus.plexus.component.repository,org.slf4j,org.apache.geronimo.gshell.command,org.codehaus.plexus'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout'/>
    <p n='uses' v='org.apache.geronimo.gshell.layout.loader,org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.plugin'/>
    <p n='uses' v='org.apache.geronimo.gshell.model.common,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.model.marshal'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.tcp'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.mina.transport.socket.nio,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.security,org.codehaus.plexus.component.discovery,org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.logging,org.apache.geronimo.gshell.console,org.slf4j,org.codehaus.plexus.classworlds,org.apache.geronimo.gshell.parser,org.apache.geronimo.gshell.plugin,org.apache.geronimo.gshell.lookup,org.apache.geronimo.gshell.layout,org.codehaus.plexus,org.apache.geronimo.gshell.ansi,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.expression,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.common.tostring,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring.etc'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp.setter'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.ansi'/>
    <p n='uses' v='org.apache.geronimo.gshell.i18n'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.slf4j,org.apache.geronimo.gshell.remote.client.auth,javax.security.auth,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.remote.message'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp.handler,org.apache.geronimo.gshell.clp.setter'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.layout'/>
    <p n='uses' v='org.apache.geronimo.gshell.model.common,com.thoughtworks.xstream.annotations'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.remote.server,org.osgi.framework,org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.console,org.slf4j,org.apache.geronimo.gshell.support,org.apache.geronimo.gshell.parser,org.springframework.beans.factory,org.apache.geronimo.gshell.layout,org.apache.geronimo.gshell,org.apache.geronimo.gshell.ansi,org.apache.servicemix.kernel.main.spi,org.springframework.aop,org.apache.geronimo.gshell.clp,org.springframework.osgi.context,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,javax.security.auth.login,org.apache.geronimo.gshell.remote.server,org.apache.geronimo.gshell.remote.server.timeout,org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.remote.jaas,org.apache.geronimo.gshell.whisper.message,org.slf4j,org.codehaus.plexus.classworlds,org.apache.geronimo.gshell.remote.crypto,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback,org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.lookup,org.apache.mina.common,org.apache.geronimo.gshell,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.codehaus.plexus.component.annotations,org.codehaus.plexus.classworlds.realm,org.apache.geronimo.gshell.remote,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.spring,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client'/>
    <p n='uses' v='javax.security.auth.login,org.apache.geronimo.gshell.remote.jaas,org.apache.geronimo.gshell.common,org.apache.mina.handler.demux,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.console,org.slf4j,org.apache.geronimo.gshell.support,org.apache.geronimo.gshell.remote.client.auth,org.apache.geronimo.gshell.remote.client.proxy,org.apache.geronimo.gshell.remote.crypto,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback,org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.apache.geronimo.gshell,org.apache.geronimo.gshell.remote.client.handler,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.clp,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.command,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.annotations
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.ansi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.ansi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.branding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.branding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp.setter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp.setter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.builtins)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.builtins
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.tostring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.tostring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.console)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.console
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.descriptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.descriptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout.loader)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout.loader
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.loader)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.loader
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.lookup)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.lookup
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.application)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.application
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.layout)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.layout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.marshal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.marshal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.plugin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.plugin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.settings)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.settings
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.plugin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.plugin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.jaas)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.jaas
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.timeout)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.timeout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.shell)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.shell
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring.bin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring.bin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring.etc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring.etc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support.plexus)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support.plexus
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.url
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.request)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.request
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.rfile)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.rfile
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.base)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.base
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.tcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.tcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.vm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.vm
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.maven.artifact.repository)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.maven.artifact.repository
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.maven.artifact.repository.layout)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.maven.artifact.repository.layout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.common ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.codec ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.serialization)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.codec.serialization ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.executor)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.executor ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.demux)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.handler.demux ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.transport.socket.nio ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.transport.vmpipe ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.kernel.jaas.config ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.main.spi)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.kernel.main.spi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.classworlds)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.classworlds
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.classworlds.realm)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.classworlds.realm
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.annotations
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.composition)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.composition
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.configurator)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.configurator
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.discovery)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.discovery
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.manager)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.manager
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.repository)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.repository
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.repository.exception)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.repository.exception
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.configuration.source)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.configuration.source
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.configuration.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.configuration.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.context
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.lifecycle.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.lifecycle.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j.helpers)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j.helpers ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.aop ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.aop.framework ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.core/1.0.0.m1' presentationname='ServiceMix Kernel :: GShell Core' symbolicname='org.apache.servicemix.kernel.gshell.core' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.core/1.0-m1/org.apache.servicemix.kernel.gshell.core-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    Provides the OSGi GShell integration
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    904339
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix Kernel :: GShell Core'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.core'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.registry'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.branding'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.codehaus.plexus.util,jline,org.apache.geronimo.gshell.ansi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp.setter,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.stream'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.whisper.message,org.apache.mina.common,org.codehaus.plexus.util,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.timeout'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.slf4j,org.codehaus.plexus.personality.plexus.lifecycle.phase,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.command.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.commands.builtins'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.layout,org.codehaus.plexus.util,org.apache.geronimo.gshell,org.apache.geronimo.gshell.ansi,com.sun.management,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command,org.slf4j,org.apache.geronimo.gshell.support,jline'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.console'/>
    <p n='uses' v='org.codehaus.plexus.component.factory,org.codehaus.plexus.classworlds.realm,org.codehaus.plexus.component.annotations,org.codehaus.plexus.component.repository,org.apache.geronimo.gshell.command,org.slf4j,org.codehaus.plexus.personality.plexus.lifecycle.phase,jline,org.codehaus.plexus'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.descriptor'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream.annotations,com.thoughtworks.xstream,org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.request'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.auth'/>
    <p n='uses' v='javax.security.auth.spi,javax.security.auth.login,org.slf4j,javax.security.auth,javax.security.auth.callback,org.apache.geronimo.gshell.remote.jaas'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.ssl'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.ssl,org.apache.mina.common,org.apache.geronimo.gshell.whisper.transport.tcp,org.apache.mina.filter,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base,javax.net.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.crypto'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,javax.crypto'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.vm'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.ssl'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.codehaus.plexus.util,org.slf4j,org.codehaus.plexus.personality.plexus.lifecycle.phase,javax.net.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.i18n'/>
    <p n='uses' v='org.codehaus.plexus.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.prefs'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.codehaus.plexus.component.repository.exception,org.codehaus.plexus,org.apache.geronimo.gshell.common,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.message,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.protocol'/>
    <p n='uses' v='org.apache.mina.common,org.apache.geronimo.gshell.whisper.message'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.expression'/>
    <p n='uses' v='org.apache.geronimo.gshell.command,org.slf4j,org.apache.commons.jexl.resolver,org.apache.commons.jexl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout.model'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.common.tostring,com.thoughtworks.xstream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.command'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.codehaus.plexus.util,org.apache.geronimo.gshell.common.tostring,org.slf4j.helpers,org.slf4j,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.rfile'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.shell'/>
    <p n='uses' v='org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.shell,org.apache.mina.common,org.apache.geronimo.gshell.whisper.stream,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.remote.server.timeout,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common,org.apache.mina.handler.demux,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.remote,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.remote.server.handler,org.codehaus.plexus.classworlds'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.filter.executor,org.apache.mina.common,org.apache.geronimo.gshell.whisper.stream,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.whisper.request,org.apache.mina.filter,org.apache.mina.filter.codec.serialization,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.jaas'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.codehaus.plexus.personality.plexus.lifecycle.phase,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common'/>
    <p n='uses' v='org.codehaus.plexus.util,org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout.loader'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.annotations,org.codehaus.plexus.util,org.apache.geronimo.gshell.layout.model,org.slf4j,org.codehaus.plexus.personality.plexus.lifecycle.phase'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.message'/>
    <p n='uses' v='org.apache.mina.handler.demux,org.apache.geronimo.gshell.common.tostring,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.osgi'/>
    <p n='uses' v='org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.url'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,org.codehaus.plexus.personality.plexus.lifecycle.phase'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring.bin'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common.io'/>
    <p n='uses' v='org.codehaus.plexus.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.support'/>
    <p n='uses' v='org.springframework.osgi.context,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.slf4j,org.osgi.framework,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.auth'/>
    <p n='uses' v='javax.security.auth.login,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.message,javax.security.auth.spi,org.apache.geronimo.gshell.common.tostring,org.slf4j,javax.security.auth,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.parser'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.proxy'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell,org.apache.geronimo.gshell.whisper.stream,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.console,org.apache.geronimo.gshell.remote,org.apache.geronimo.gshell.command,org.slf4j,org.apache.geronimo.gshell.remote.client,jline'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.plugin'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.codehaus.plexus.component.repository,org.codehaus.plexus.configuration,org.codehaus.plexus.configuration.xml,org.codehaus.plexus,com.thoughtworks.xstream.core,org.codehaus.plexus.component.discovery,org.codehaus.plexus.classworlds.realm,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.descriptor'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.message'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.lookup'/>
    <p n='uses' v='org.codehaus.plexus.component.factory,org.codehaus.plexus.classworlds.realm,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.repository.exception,org.codehaus.plexus.component.repository,org.slf4j,org.apache.geronimo.gshell.command,org.codehaus.plexus'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.util'/>
    <p n='uses' v='org.apache.mina.common,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout'/>
    <p n='uses' v='org.apache.geronimo.gshell.layout.loader,org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command,org.slf4j,org.codehaus.plexus.personality.plexus.lifecycle.phase'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.tcp'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.mina.transport.socket.nio,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.codehaus.plexus.util,org.apache.geronimo.gshell.common,org.codehaus.plexus.logging,org.apache.geronimo.gshell.console,org.slf4j,org.codehaus.plexus.personality.plexus.lifecycle.phase,org.codehaus.plexus.classworlds,org.apache.geronimo.gshell.parser,org.apache.geronimo.gshell.lookup,org.apache.geronimo.gshell.layout,org.codehaus.plexus,org.apache.geronimo.gshell.ansi,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.expression,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.common.tostring,org.apache.geronimo.gshell.command,jline'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring.etc'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp.setter'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.ansi'/>
    <p n='uses' v='org.apache.geronimo.gshell.i18n,jline'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.slf4j,org.apache.geronimo.gshell.remote.client.auth,javax.security.auth,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.remote.message'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp.handler,org.apache.geronimo.gshell.clp.setter'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client'/>
    <p n='uses' v='javax.security.auth.login,org.apache.geronimo.gshell.remote.jaas,org.apache.geronimo.gshell.common,org.apache.mina.handler.demux,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.console,org.slf4j,org.apache.geronimo.gshell.support,org.codehaus.plexus.personality.plexus.lifecycle.phase,org.apache.geronimo.gshell.remote.client.auth,org.apache.geronimo.gshell.remote.client.proxy,org.apache.geronimo.gshell.remote.crypto,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback,org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.apache.geronimo.gshell,org.apache.geronimo.gshell.remote.client.handler,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.clp,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.command,jline,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,javax.security.auth.login,org.apache.geronimo.gshell.remote.server,org.apache.geronimo.gshell.remote.server.timeout,org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.remote.jaas,org.apache.geronimo.gshell.whisper.message,org.slf4j,org.codehaus.plexus.personality.plexus.lifecycle.phase,org.codehaus.plexus.classworlds,org.apache.geronimo.gshell.remote.crypto,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback,org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.lookup,org.apache.mina.common,org.apache.geronimo.gshell,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.codehaus.plexus.component.annotations,org.codehaus.plexus.classworlds.realm,org.apache.geronimo.gshell.remote,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.spring,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.codehaus.plexus.util,org.apache.geronimo.gshell.remote.server,org.osgi.framework,org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.osgi,org.apache.geronimo.gshell.common.io,org.slf4j,org.apache.geronimo.gshell.support,org.codehaus.plexus.personality.plexus.lifecycle.phase,org.apache.geronimo.gshell.parser,org.apache.geronimo.gshell.layout,org.apache.geronimo.gshell,org.apache.geronimo.gshell.ansi,org.apache.servicemix.kernel.main.spi,org.springframework.aop,org.apache.geronimo.gshell.clp,org.springframework.osgi.context,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command,jline'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.management
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.annotations
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.core
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.ansi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.ansi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.branding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.branding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp.setter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp.setter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.builtins)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.builtins
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.tostring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.tostring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.console)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.console
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.descriptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.descriptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout.loader)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout.loader
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.lookup)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.lookup
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.plugin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.plugin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.jaas)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.jaas
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.timeout)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.timeout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.shell)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.shell
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring.bin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring.bin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring.etc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring.etc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.url
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.protocol)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.protocol
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.request)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.request
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.rfile)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.rfile
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.base)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.base
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.tcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.tcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.vm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.vm
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.serialization)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.codec.serialization
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.executor)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.executor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.demux)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.handler.demux
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.transport.socket.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.transport.vmpipe
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.main.spi)(version&gt;=1.0.0.m1))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.kernel.main.spi ;version=1.0.0.m1
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.classworlds)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.classworlds
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.classworlds.realm)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.classworlds.realm
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.annotations
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.composition)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.composition
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.configurator)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.configurator
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.discovery)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.discovery
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.manager)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.manager
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.repository)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.repository
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.repository.exception)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.repository.exception
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.configuration.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.configuration.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.context
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.lifecycle.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.lifecycle.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j.helpers)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j.helpers ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.aop ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.0.0.rc2
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.core/1.0.0' presentationname='Apache ServiceMix Kernel :: GShell Core' symbolicname='org.apache.servicemix.kernel.gshell.core' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.core/1.0.0/org.apache.servicemix.kernel.gshell.core-1.0.0.jar' version='1.0.0'>
  <description>
    Provides the OSGi GShell integration
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    997621
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Core'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.core'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.registry'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.descriptor,org.codehaus.plexus,org.apache.geronimo.gshell.plugin'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.settings'/>
    <p n='uses' v='org.apache.geronimo.gshell.model.common,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.model.marshal'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.branding'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.ansi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp.setter,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.stream'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.whisper.message,org.apache.mina.common,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.timeout'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.slf4j,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.logging'/>
    <p n='uses' v='org.codehaus.plexus.logging,org.slf4j,org.apache.geronimo.gshell.parser'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.support.plexus'/>
    <p n='uses' v='org.codehaus.plexus.component.repository.exception,org.codehaus.plexus'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.common'/>
    <p n='uses' v='com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.command.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.commands.builtins'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.layout,org.apache.geronimo.gshell,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command,org.slf4j,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.console'/>
    <p n='uses' v='org.apache.geronimo.gshell.branding,org.codehaus.plexus.component.repository,org.codehaus.plexus,org.codehaus.plexus.component.factory,org.codehaus.plexus.component.annotations,org.codehaus.plexus.classworlds.realm,org.slf4j,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.descriptor'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream.annotations,com.thoughtworks.xstream,org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.request'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.auth'/>
    <p n='uses' v='javax.security.auth.spi,javax.security.auth.login,org.slf4j,javax.security.auth,javax.security.auth.callback,org.apache.geronimo.gshell.remote.jaas'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.ssl'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.ssl,org.apache.mina.common,org.apache.geronimo.gshell.whisper.transport.tcp,org.apache.mina.filter,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base,org.apache.servicemix.kernel.jaas.config,javax.net.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.crypto'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,javax.crypto'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.vm'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.ssl'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,javax.net.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.i18n'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.commands.utils'/>
    <p n='uses' v='org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.common.io,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.prefs'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.codehaus.plexus.component.repository.exception,org.codehaus.plexus,org.apache.geronimo.gshell.common,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.message,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.expression'/>
    <p n='uses' v='org.apache.geronimo.gshell.command,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout.model'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.common.tostring,com.thoughtworks.xstream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.command'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.common.tostring,org.slf4j.helpers,org.slf4j,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.rfile'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.shell'/>
    <p n='uses' v='org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.shell,org.apache.mina.common,org.apache.geronimo.gshell.whisper.stream,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.remote.server.timeout,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common,org.apache.mina.handler.demux,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.remote,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.remote.server.handler,org.codehaus.plexus.classworlds'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.marshal'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.security'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.loader'/>
    <p n='uses' v='org.apache.maven.artifact.repository,org.apache.maven.artifact.repository.layout,org.codehaus.plexus.component.repository.exception,org.apache.geronimo.gshell,org.codehaus.plexus,org.apache.geronimo.gshell.model.application,org.apache.geronimo.gshell.support.plexus,org.slf4j,org.apache.geronimo.gshell.command,org.codehaus.plexus.classworlds'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.filter.executor,org.apache.mina.common,org.apache.geronimo.gshell.whisper.stream,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.whisper.request,org.apache.mina.filter,org.apache.mina.filter.codec.serialization,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.jaas'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.common.tostring,org.slf4j,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.application'/>
    <p n='uses' v='org.apache.geronimo.gshell.model.common,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.model.marshal,org.apache.geronimo.gshell.model.layout'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common'/>
    <p n='uses' v='org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout.loader'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.layout.model,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.message'/>
    <p n='uses' v='org.apache.mina.handler.demux,org.apache.geronimo.gshell.common.tostring,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.url'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common.io'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring.bin'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.support'/>
    <p n='uses' v='org.springframework.osgi.context,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.slf4j,org.osgi.framework,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.auth'/>
    <p n='uses' v='javax.security.auth.login,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.message,javax.security.auth.spi,org.apache.geronimo.gshell.common.tostring,org.slf4j,javax.security.auth,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.parser'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.proxy'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell,org.apache.geronimo.gshell.whisper.stream,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.console,org.apache.geronimo.gshell.remote,org.apache.geronimo.gshell.command,org.slf4j,org.apache.geronimo.gshell.remote.client'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.plugin'/>
    <p n='uses' v='org.codehaus.plexus.component.repository,org.codehaus.plexus.configuration,org.codehaus.plexus.configuration.xml,org.codehaus.plexus,org.codehaus.plexus.component.discovery,org.codehaus.plexus.classworlds.realm,org.codehaus.plexus.component.annotations,com.thoughtworks.xstream,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.descriptor'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.message'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.util'/>
    <p n='uses' v='org.apache.mina.common,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.lookup'/>
    <p n='uses' v='org.codehaus.plexus.component.factory,org.codehaus.plexus.classworlds.realm,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.repository.exception,org.codehaus.plexus.component.repository,org.slf4j,org.apache.geronimo.gshell.command,org.codehaus.plexus'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout'/>
    <p n='uses' v='org.apache.geronimo.gshell.layout.loader,org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.plugin'/>
    <p n='uses' v='org.apache.geronimo.gshell.model.common,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.model.marshal'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.tcp'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.mina.transport.socket.nio,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.security,org.codehaus.plexus.component.discovery,org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.logging,org.apache.geronimo.gshell.console,org.slf4j,org.codehaus.plexus.classworlds,org.apache.geronimo.gshell.parser,org.apache.geronimo.gshell.plugin,org.apache.geronimo.gshell.lookup,org.apache.geronimo.gshell.layout,org.codehaus.plexus,org.apache.geronimo.gshell.ansi,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.expression,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.common.tostring,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring.etc'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp.setter'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.ansi'/>
    <p n='uses' v='org.apache.geronimo.gshell.i18n'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.slf4j,org.apache.geronimo.gshell.remote.client.auth,javax.security.auth,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.remote.message'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp.handler,org.apache.geronimo.gshell.clp.setter'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.model.layout'/>
    <p n='uses' v='org.apache.geronimo.gshell.model.common,com.thoughtworks.xstream.annotations'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.remote.server,org.osgi.framework,org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.console,org.slf4j,org.apache.geronimo.gshell.support,org.apache.geronimo.gshell.parser,org.springframework.beans.factory,org.apache.geronimo.gshell.layout,org.apache.geronimo.gshell,org.apache.geronimo.gshell.ansi,org.apache.servicemix.kernel.main.spi,org.springframework.aop,org.apache.geronimo.gshell.clp,org.springframework.osgi.context,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,javax.security.auth.login,org.apache.geronimo.gshell.remote.server,org.apache.geronimo.gshell.remote.server.timeout,org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.remote.jaas,org.apache.geronimo.gshell.whisper.message,org.slf4j,org.codehaus.plexus.classworlds,org.apache.geronimo.gshell.remote.crypto,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback,org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.lookup,org.apache.mina.common,org.apache.geronimo.gshell,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.codehaus.plexus.component.annotations,org.codehaus.plexus.classworlds.realm,org.apache.geronimo.gshell.remote,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.spring,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client'/>
    <p n='uses' v='javax.security.auth.login,org.apache.geronimo.gshell.remote.jaas,org.apache.geronimo.gshell.common,org.apache.mina.handler.demux,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.console,org.slf4j,org.apache.geronimo.gshell.support,org.apache.geronimo.gshell.remote.client.auth,org.apache.geronimo.gshell.remote.client.proxy,org.apache.geronimo.gshell.remote.crypto,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback,org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.apache.geronimo.gshell,org.apache.geronimo.gshell.remote.client.handler,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.clp,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.command,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.annotations
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.ansi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.ansi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.branding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.branding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp.setter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp.setter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.builtins)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.builtins
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.utils)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.utils
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.tostring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.tostring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.console)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.console
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.descriptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.descriptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout.loader)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout.loader
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.loader)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.loader
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.lookup)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.lookup
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.application)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.application
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.layout)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.layout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.marshal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.marshal
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.plugin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.plugin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.model.settings)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.model.settings
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.plugin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.plugin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.jaas)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.jaas
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.timeout)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.timeout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.shell)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.shell
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring.bin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring.bin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring.etc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring.etc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support.plexus)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support.plexus
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.url
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.request)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.request
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.rfile)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.rfile
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.base)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.base
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.tcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.tcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.vm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.vm
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.maven.artifact.repository)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.maven.artifact.repository
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.maven.artifact.repository.layout)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.maven.artifact.repository.layout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.common ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.codec ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.serialization)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.codec.serialization ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.executor)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.executor ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.demux)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.handler.demux ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.transport.socket.nio ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.transport.vmpipe ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.kernel.jaas.config ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.main.spi)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.kernel.main.spi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.classworlds)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.classworlds
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.classworlds.realm)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.classworlds.realm
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.annotations
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.composition)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.composition
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.configurator)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.configurator
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.discovery)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.discovery
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.manager)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.manager
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.repository)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.repository
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.repository.exception)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.repository.exception
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.configuration.source)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.configuration.source
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.configuration.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.configuration.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.context
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.lifecycle.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.lifecycle.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j.helpers)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j.helpers ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.aop ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.aop.framework ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.core/1.0.0.m2' presentationname='ServiceMix Kernel :: GShell Core' symbolicname='org.apache.servicemix.kernel.gshell.core' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.core/1.0-m2/org.apache.servicemix.kernel.gshell.core-1.0-m2.jar' version='1.0.0.m2'>
  <description>
    Provides the OSGi GShell integration
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    904293
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix Kernel :: GShell Core'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.core'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.registry'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.branding'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.ansi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp.setter,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.stream'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.whisper.message,org.apache.mina.common,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.timeout'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.slf4j,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.command.annotation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.commands.builtins'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.layout,org.apache.geronimo.gshell,org.apache.geronimo.gshell.ansi,com.sun.management,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command,org.slf4j,org.apache.geronimo.gshell.support'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.console'/>
    <p n='uses' v='org.codehaus.plexus.component.factory,org.codehaus.plexus.classworlds.realm,org.codehaus.plexus.component.annotations,org.codehaus.plexus.component.repository,org.apache.geronimo.gshell.command,org.slf4j,org.codehaus.plexus'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.descriptor'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream.annotations,com.thoughtworks.xstream,org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.request'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.auth'/>
    <p n='uses' v='javax.security.auth.spi,javax.security.auth.login,org.slf4j,javax.security.auth,javax.security.auth.callback,org.apache.geronimo.gshell.remote.jaas'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.ssl'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.ssl,org.apache.mina.common,org.apache.geronimo.gshell.whisper.transport.tcp,org.apache.mina.filter,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base,javax.net.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.crypto'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,javax.crypto'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.vm'/>
    <p n='uses' v='org.apache.mina.transport.vmpipe,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.ssl'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j,javax.net.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.i18n'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.prefs'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.codehaus.plexus.component.repository.exception,org.codehaus.plexus,org.apache.geronimo.gshell.common,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.message,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.protocol'/>
    <p n='uses' v='org.apache.mina.common,org.apache.geronimo.gshell.whisper.message'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.expression'/>
    <p n='uses' v='org.apache.geronimo.gshell.command,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout.model'/>
    <p n='uses' v='com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,com.thoughtworks.xstream.annotations,org.apache.geronimo.gshell.common.tostring,com.thoughtworks.xstream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.command'/>
    <p n='uses' v='org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.common.tostring,org.slf4j.helpers,org.slf4j,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.rfile'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.shell'/>
    <p n='uses' v='org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.shell,org.apache.mina.common,org.apache.geronimo.gshell.whisper.stream,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.remote.server.timeout,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common,org.apache.mina.handler.demux,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.remote,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.remote.server.handler,org.codehaus.plexus.classworlds'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.apache.mina.filter.executor,org.apache.mina.common,org.apache.geronimo.gshell.whisper.stream,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.common,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.whisper.request,org.apache.mina.filter,org.apache.mina.filter.codec.serialization,org.apache.mina.filter.codec'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.jaas'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.common.tostring,org.slf4j,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common'/>
    <p n='uses' v='org.apache.geronimo.gshell.common.tostring'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout.loader'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.layout.model,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.message'/>
    <p n='uses' v='org.apache.mina.handler.demux,org.apache.geronimo.gshell.common.tostring,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.osgi'/>
    <p n='uses' v='org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.url'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring.bin'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.common.io'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.support'/>
    <p n='uses' v='org.springframework.osgi.context,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.command,org.slf4j,org.osgi.framework,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.auth'/>
    <p n='uses' v='javax.security.auth.login,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.message,javax.security.auth.spi,org.apache.geronimo.gshell.common.tostring,org.slf4j,javax.security.auth,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.parser'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.proxy'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell,org.apache.geronimo.gshell.whisper.stream,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.console,org.apache.geronimo.gshell.remote,org.apache.geronimo.gshell.command,org.slf4j,org.apache.geronimo.gshell.remote.client'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.plugin'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.codehaus.plexus.component.repository,org.codehaus.plexus.configuration,org.codehaus.plexus.configuration.xml,org.codehaus.plexus,com.thoughtworks.xstream.core,org.codehaus.plexus.component.discovery,org.codehaus.plexus.classworlds.realm,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.common.tostring,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.descriptor'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.message'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.common.tostring,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.lookup'/>
    <p n='uses' v='org.codehaus.plexus.component.factory,org.codehaus.plexus.classworlds.realm,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.repository.exception,org.codehaus.plexus.component.repository,org.slf4j,org.apache.geronimo.gshell.command,org.codehaus.plexus'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.util'/>
    <p n='uses' v='org.apache.mina.common,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.layout'/>
    <p n='uses' v='org.apache.geronimo.gshell.layout.loader,org.apache.geronimo.gshell.shell,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command,org.slf4j'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.whisper.transport.tcp'/>
    <p n='uses' v='org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.mina.transport.socket.nio,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.whisper.transport.base'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.common,org.codehaus.plexus.logging,org.apache.geronimo.gshell.console,org.slf4j,org.codehaus.plexus.classworlds,org.apache.geronimo.gshell.parser,org.apache.geronimo.gshell.lookup,org.apache.geronimo.gshell.layout,org.codehaus.plexus,org.apache.geronimo.gshell.ansi,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.expression,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.common.tostring,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring.etc'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp.setter'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.ansi'/>
    <p n='uses' v='org.apache.geronimo.gshell.i18n'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.whisper.util,org.codehaus.plexus.component.annotations,org.apache.mina.common,org.apache.geronimo.gshell.whisper.message,org.slf4j,org.apache.geronimo.gshell.remote.client.auth,javax.security.auth,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.remote.message'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp.handler,org.apache.geronimo.gshell.clp.setter'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.client'/>
    <p n='uses' v='javax.security.auth.login,org.apache.geronimo.gshell.remote.jaas,org.apache.geronimo.gshell.common,org.apache.mina.handler.demux,org.apache.geronimo.gshell.whisper.message,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.console,org.slf4j,org.apache.geronimo.gshell.support,org.apache.geronimo.gshell.remote.client.auth,org.apache.geronimo.gshell.remote.client.proxy,org.apache.geronimo.gshell.remote.crypto,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback,org.apache.geronimo.gshell.whisper.util,org.apache.mina.common,org.apache.geronimo.gshell,org.apache.geronimo.gshell.remote.client.handler,org.apache.geronimo.gshell.whisper.transport,org.apache.geronimo.gshell.clp,org.codehaus.plexus.component.annotations,org.apache.geronimo.gshell.command,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.remote.server.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,javax.security.auth.login,org.apache.geronimo.gshell.remote.server,org.apache.geronimo.gshell.remote.server.timeout,org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.remote.jaas,org.apache.geronimo.gshell.whisper.message,org.slf4j,org.codehaus.plexus.classworlds,org.apache.geronimo.gshell.remote.crypto,org.apache.geronimo.gshell.remote.message,javax.security.auth.callback,org.apache.geronimo.gshell.whisper.util,org.apache.geronimo.gshell.lookup,org.apache.mina.common,org.apache.geronimo.gshell,org.codehaus.plexus,org.apache.geronimo.gshell.whisper.transport,org.codehaus.plexus.component.annotations,org.codehaus.plexus.classworlds.realm,org.apache.geronimo.gshell.remote,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.spring,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.branding,org.apache.geronimo.gshell.remote.server,org.osgi.framework,org.apache.geronimo.gshell.common,org.apache.geronimo.gshell.command.annotation,org.apache.geronimo.gshell.osgi,org.apache.geronimo.gshell.common.io,org.slf4j,org.apache.geronimo.gshell.support,org.apache.geronimo.gshell.parser,org.apache.geronimo.gshell.layout,org.apache.geronimo.gshell,org.apache.geronimo.gshell.ansi,org.apache.servicemix.kernel.main.spi,org.springframework.aop,org.apache.geronimo.gshell.clp,org.springframework.osgi.context,org.apache.geronimo.gshell.layout.model,org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.sun.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.sun.management
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.annotations
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.core
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.crypto
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=junit.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package junit.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.ansi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.ansi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.branding)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.branding
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp.setter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp.setter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command.annotation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.builtins)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.builtins
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.common.tostring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.common.tostring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.console)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.console
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.descriptor)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.descriptor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.i18n)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.i18n
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout.loader)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout.loader
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.layout.model)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.layout.model
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.lookup)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.lookup
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.osgi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.osgi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.plugin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.plugin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.registry)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.registry
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.client.proxy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.client.proxy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.crypto
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.jaas)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.jaas
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.handler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.handler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.server.timeout)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.server.timeout
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.remote.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.remote.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.shell)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.shell
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring.bin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring.bin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring.etc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring.etc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.support
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.url
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.message)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.message
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.protocol)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.protocol
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.request)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.request
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.rfile)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.rfile
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.base)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.base
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.ssl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.tcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.tcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.transport.vm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.transport.vm
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.whisper.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.whisper.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.codec
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.codec.serialization)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.codec.serialization
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.filter.executor)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.filter.executor
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.handler.demux)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.handler.demux
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.socket.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.transport.socket.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.mina.transport.vmpipe)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.mina.transport.vmpipe
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.main.spi)(version&gt;=1.0.0.m2))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.kernel.main.spi ;version=1.0.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.classworlds)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.classworlds
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.classworlds.realm)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.classworlds.realm
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.annotations)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.annotations
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.composition)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.composition
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.configurator)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.configurator
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.discovery)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.discovery
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.manager)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.manager
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.repository)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.repository
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.component.repository.exception)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.component.repository.exception
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.configuration)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.configuration
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.configuration.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.configuration.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.context
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.lifecycle.phase)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.lifecycle.phase
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j.helpers)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j.helpers ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.aop ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.gshell.core/1.1.0' presentationname='Apache ServiceMix Kernel :: GShell Core' symbolicname='org.apache.servicemix.kernel.gshell.core' uri='../org/apache/servicemix/kernel/gshell/org.apache.servicemix.kernel.gshell.core/1.1.0/org.apache.servicemix.kernel.gshell.core-1.1.0.jar' version='1.1.0'>
  <description>
    Provides the OSGi GShell integration
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    811039
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: GShell Core'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.gshell.core'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.wisdom.config'/>
    <p n='uses' v='org.springframework.util.xml,org.apache.geronimo.gshell.wisdom.plugin.bundle,org.w3c.dom,org.apache.geronimo.gshell.wisdom.command,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.apache.geronimo.gshell.wisdom.registry,org.springframework.beans.factory.xml,org.slf4j,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.registry'/>
    <p n='uses' v='org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.wisdom.plugin.bundle'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.wisdom.registry,org.apache.geronimo.gshell.command,org.slf4j,org.apache.geronimo.gshell.application.plugin.bundle,org.apache.geronimo.gshell.wisdom.command'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.chronos'/>
    <p n='uses' v='org.apache.geronimo.gshell.yarn'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.artifact.transfer.monitor'/>
    <p n='uses' v='org.apache.geronimo.gshell.artifact.transfer,org.apache.geronimo.gshell.io'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.commandline'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.commands.text'/>
    <p n='uses' v='org.apache.geronimo.gshell.vfs.support,org.apache.geronimo.gshell.vfs,org.apache.commons.vfs,org.apache.geronimo.gshell.clp,org.apache.oro.text.regex,org.apache.oro.text,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.io'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp.handler'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp.setter,org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.wisdom.scope'/>
    <p n='uses' v='org.springframework.beans.factory.config,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.terminal'/>
    <p n='uses' v='jline'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.plexus.interpolation.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.console'/>
    <p n='uses' v='org.slf4j,jline,org.apache.geronimo.gshell.io'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.application.plugin'/>
    <p n='uses' v='org.apache.geronimo.gshell.application.plugin.bundle,org.apache.geronimo.gshell.application,org.apache.geronimo.gshell.artifact'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.artifact'/>
    <p n='uses' v='org.apache.geronimo.gshell.artifact.transfer'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.vfs.provider.meta.data.support'/>
    <p n='uses' v='org.apache.geronimo.gshell.vfs.provider.meta.data,org.apache.geronimo.gshell.vfs.provider.meta,org.apache.commons.vfs'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.i18n'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.commands.ssh'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.notification,org.apache.geronimo.gshell.commandline,com.google.code.sshd.common.util,org.jsecurity,org.jsecurity.mgt,org.apache.geronimo.gshell.application,com.google.code.sshd.server,com.google.code.sshd,org.apache.geronimo.gshell.console,org.slf4j,org.apache.geronimo.gshell.i18n,org.apache.geronimo.gshell.application.model,org.apache.geronimo.gshell.clp,org.jsecurity.authc,org.jsecurity.subject,org.apache.geronimo.gshell.command,jline,org.apache.geronimo.gshell.spring,org.apache.geronimo.gshell.io,org.apache.geronimo.gshell.console.completer'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.artifact.transfer'/>
    <p n='uses' v='org.slf4j'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.plexus.interpolation'/>
    <p n='uses' v='org.codehaus.plexus.interpolation.os,org.codehaus.plexus.interpolation.reflection,org.codehaus.plexus.interpolation.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.event'/>
    <p n='uses' v='org.slf4j'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.commands.network'/>
    <p n='uses' v='org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.io'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.wisdom.branding'/>
    <p n='uses' v='org.apache.geronimo.gshell.application.model,org.apache.geronimo.gshell.ansi'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.wisdom.registry'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.vfs,org.apache.commons.vfs,org.apache.geronimo.gshell.event,org.apache.geronimo.gshell.wisdom.command,org.apache.geronimo.gshell.vfs.provider.meta.data,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.vfs.provider.meta,org.apache.geronimo.gshell.spring'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.commands.builtin'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.i18n,org.apache.geronimo.gshell.notification,org.apache.geronimo.gshell.commandline,org.apache.geronimo.gshell.vfs,org.apache.commons.vfs,org.apache.geronimo.gshell.application.model,org.apache.geronimo.gshell.application,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command,org.slf4j,jline,org.apache.geronimo.gshell.io'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.wisdom.plugin'/>
    <p n='uses' v='org.apache.geronimo.gshell.chronos,org.apache.geronimo.gshell.application.plugin.activation,org.apache.commons.vfs,org.apache.geronimo.gshell.application.plugin.bundle,org.apache.geronimo.gshell.event,org.apache.geronimo.gshell.application.model,org.apache.geronimo.gshell.wisdom.application,org.apache.geronimo.gshell.application,org.apache.geronimo.gshell.vfs.provider.meta.data,org.slf4j,org.apache.geronimo.gshell.application.plugin,org.apache.geronimo.gshell.vfs.provider.meta,org.apache.geronimo.gshell.spring,org.apache.geronimo.gshell.artifact'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.vfs.provider.meta.data'/>
    <p n='uses' v='org.slf4j,org.apache.geronimo.gshell.vfs.provider.meta,org.apache.commons.vfs,org.apache.geronimo.gshell.event'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.command'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.i18n,org.apache.geronimo.gshell.notification,org.apache.geronimo.gshell.yarn,org.apache.geronimo.gshell.io'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.io'/>
    <p n='uses' v='org.apache.geronimo.gshell.yarn,org.slf4j.helpers,jline,org.apache.geronimo.gshell.ansi'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.shell'/>
    <p n='uses' v='org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.io'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.notification'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.plexus.util'/>
    <p n='uses' v='org.codehaus.plexus.util.reflection,org.codehaus.plexus.util.xml,org.codehaus.plexus.util.io'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.wisdom.meta'/>
    <p n='uses' v='org.apache.geronimo.gshell.vfs.provider.meta.data.support'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.wisdom.completer'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.wisdom.registry,org.apache.geronimo.gshell.command,org.slf4j,jline,org.apache.geronimo.gshell.event,org.apache.geronimo.gshell.console.completer'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.yarn'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.application.plugin.bundle'/>
    <p n='uses' v='org.apache.geronimo.gshell.command'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.wisdom.command'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.i18n,org.apache.geronimo.gshell.chronos,org.apache.geronimo.gshell.notification,org.apache.geronimo.gshell.commandline,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.wisdom.registry,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.spring,org.apache.geronimo.gshell.io'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.application'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.yarn,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.io,org.apache.geronimo.gshell.application.model,org.apache.geronimo.gshell.artifact'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.parser.visitor'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.notification,org.apache.geronimo.gshell.commandline,org.apache.geronimo.gshell.interpolation,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.parser,org.apache.geronimo.gshell.io'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.commands.shell'/>
    <p n='uses' v='org.apache.geronimo.gshell.vfs.support,org.apache.geronimo.gshell.vfs,org.apache.commons.vfs,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.vfs.selector,org.apache.oro.text.regex,org.apache.oro.text,org.apache.geronimo.gshell.command,org.slf4j,org.apache.geronimo.gshell.io,org.apache.commons.vfs.util'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.vfs.selector'/>
    <p n='uses' v='org.apache.commons.vfs'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.wisdom.shell'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.chronos,org.apache.geronimo.gshell.notification,org.apache.geronimo.gshell.commandline,org.apache.geronimo.gshell.interpolation,org.codehaus.plexus.interpolation,org.apache.geronimo.gshell.application.model,org.apache.geronimo.gshell.application,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.parser.visitor,org.apache.geronimo.gshell.console,org.slf4j,org.apache.geronimo.gshell.command,jline,org.apache.geronimo.gshell.parser,org.apache.geronimo.gshell.io,org.apache.geronimo.gshell.console.completer'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.commands.file'/>
    <p n='uses' v='org.apache.geronimo.gshell.vfs.support,org.apache.geronimo.gshell.vfs,org.apache.commons.vfs,org.apache.geronimo.gshell.clp,org.apache.geronimo.gshell.command,org.slf4j,jline,org.apache.geronimo.gshell.io'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.wisdom.builder'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.chronos,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.spring,org.apache.geronimo.gshell.io,org.apache.geronimo.gshell.application.model,org.apache.geronimo.gshell.application'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.plexus.interpolation.object'/>
    <p n='uses' v='org.codehaus.plexus.interpolation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.vfs.provider.meta'/>
    <p n='uses' v='org.apache.commons.vfs.provider,org.apache.geronimo.gshell.vfs.provider.meta.data,org.slf4j,org.apache.commons.vfs,org.apache.commons.vfs.impl'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.parser'/>
    <p n='uses' v='org.slf4j'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.vfs.support'/>
    <p n='uses' v='org.springframework.beans.factory.annotation,org.apache.geronimo.gshell.notification,org.apache.geronimo.gshell.command,org.slf4j,org.apache.geronimo.gshell.vfs,org.apache.commons.vfs'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.application.plugin.activation'/>
    <p n='uses' v='org.apache.geronimo.gshell.application.plugin'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.vfs'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.apache.commons.vfs.provider,org.apache.geronimo.gshell.command,org.slf4j,org.apache.commons.vfs.provider.local,jline,org.apache.commons.vfs'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.interpolation'/>
    <p n='uses' v='org.apache.geronimo.gshell.notification,org.apache.commons.jexl.resolver,org.slf4j,org.apache.geronimo.gshell.command,org.codehaus.plexus.interpolation,org.apache.commons.jexl'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.application.model'/>
    <p n='uses' v='org.apache.geronimo.gshell.yarn,org.apache.geronimo.gshell.artifact'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.ansi'/>
    <p n='uses' v='org.apache.geronimo.gshell.i18n,jline'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.wisdom.application'/>
    <p n='uses' v='org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.chronos,org.apache.geronimo.gshell.event,org.apache.geronimo.gshell.application.model,org.apache.geronimo.gshell.application,org.slf4j,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.spring,org.apache.geronimo.gshell.io,org.apache.geronimo.gshell.artifact,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp.setter'/>
    <p n='uses' v='org.apache.geronimo.gshell.clp'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.plexus.interpolation.reflection'/>
    <p n='uses' v='org.codehaus.plexus.interpolation.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.clp'/>
    <p n='uses' v='org.apache.geronimo.gshell.i18n,org.apache.geronimo.gshell.clp.handler,org.apache.geronimo.gshell.clp.setter'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.core.vfs.mvn'/>
    <p n='uses' v='org.apache.commons.httpclient,org.apache.commons.vfs.provider.url,org.apache.commons.vfs.provider,org.apache.commons.vfs'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.core.config'/>
    <p n='uses' v='org.springframework.util.xml,org.w3c.dom,org.apache.geronimo.gshell.wisdom.command,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.apache.geronimo.gshell.wisdom.registry,org.springframework.beans.factory.xml,org.slf4j,org.apache.servicemix.kernel.gshell.core,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.core.commands'/>
    <p n='uses' v='org.codehaus.plexus.util,org.apache.geronimo.gshell.application.model,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.command,org.apache.servicemix.kernel.gshell.core,org.apache.geronimo.gshell.io'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.vfs.config'/>
    <p n='uses' v='org.apache.commons.vfs.provider,org.apache.commons.vfs.provider.url,org.apache.commons.vfs.operations,org.apache.commons.vfs,org.apache.commons.vfs.impl,org.apache.commons.vfs.cache,org.springframework.beans.factory.annotation,org.slf4j,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.core.sshd'/>
    <p n='uses' v='com.google.code.sshd,com.google.code.sshd.server'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.gshell.core'/>
    <p n='uses' v='org.apache.geronimo.gshell.registry,org.apache.geronimo.gshell.shell,org.apache.geronimo.gshell.notification,org.apache.geronimo.gshell.commandline,org.osgi.framework,org.apache.geronimo.gshell.wisdom.command,org.apache.geronimo.gshell.application,org.slf4j,org.apache.geronimo.gshell.artifact,org.springframework.beans.factory,org.apache.commons.logging,org.apache.geronimo.gshell.event,org.apache.geronimo.gshell.application.model,org.apache.geronimo.gshell.ansi,org.apache.geronimo.gshell.wisdom.application,org.springframework.context,org.apache.servicemix.kernel.main.spi,org.apache.geronimo.gshell.clp,org.springframework.osgi.context,org.springframework.beans.factory.config,org.apache.geronimo.gshell.wisdom.registry,org.apache.geronimo.gshell.command,org.apache.geronimo.gshell.spring,org.springframework.beans,org.apache.geronimo.gshell.io'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.spring'/>
    <p n='uses' v='org.apache.geronimo.gshell.chronos,org.springframework.core.io.support,org.xml.sax,org.springframework.beans.support,org.springframework.core,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,org.springframework.beans.factory.support,org.springframework.beans.factory.config,org.springframework.core.io,org.springframework.beans.factory.xml,javax.xml.parsers,org.slf4j,org.springframework.beans,javax.xml.transform.stream,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.codehaus.plexus.interpolation.os'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.wisdom.plugin.activation'/>
    <p n='uses' v='org.apache.geronimo.gshell.application.plugin.activation,org.apache.geronimo.gshell.application.plugin,org.apache.geronimo.gshell.application.plugin.bundle'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.gshell.console.completer'/>
    <p n='uses' v='jline'/>
    <p n='version' t='version' v='1.0.0.alpha-2-SNAPSHOT'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.google.code.sshd)(version&gt;=0.1.0))' multiple='false' name='package' optional='false'>
    Import package com.google.code.sshd ;version=0.1.0
  </require>
  <require extend='false' filter='(&amp;(package=com.google.code.sshd.common.util)(version&gt;=0.1.0))' multiple='false' name='package' optional='false'>
    Import package com.google.code.sshd.common.util ;version=0.1.0
  </require>
  <require extend='false' filter='(&amp;(package=com.google.code.sshd.server)(version&gt;=0.1.0))' multiple='false' name='package' optional='false'>
    Import package com.google.code.sshd.server ;version=0.1.0
  </require>
  <require extend='false' filter='(&amp;(package=com.google.code.sshd.server.jaas)(version&gt;=0.1.0))' multiple='false' name='package' optional='false'>
    Import package com.google.code.sshd.server.jaas ;version=0.1.0
  </require>
  <require extend='false' filter='(&amp;(package=com.google.code.sshd.server.keyprovider)(version&gt;=0.1.0))' multiple='false' name='package' optional='false'>
    Import package com.google.code.sshd.server.keyprovider ;version=0.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=jline)(version&gt;=0.9.0))' multiple='false' name='package' optional='false'>
    Import package jline ;version=0.9.0
  </require>
  <require extend='false' filter='(&amp;(package=org.aopalliance.aop)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.aopalliance.aop
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient)(version&gt;=3.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient ;version=3.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jexl)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jexl ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.jexl.resolver)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.jexl.resolver ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.cache)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.cache ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.impl)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.impl ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.operations)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.operations ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.local)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.local ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.ram)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.ram ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.temp)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.temp ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.provider.url)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.provider.url ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.ansi)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.ansi ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.application)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.application ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.application.model)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.application.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.application.plugin)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.application.plugin
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.application.plugin.activation)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.application.plugin.activation
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.application.plugin.bundle)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.application.plugin.bundle
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.artifact)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.artifact ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.artifact.transfer)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.artifact.transfer
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.artifact.transfer.monitor)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.artifact.transfer.monitor
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.chronos)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.chronos ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp.handler)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp.handler ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.clp.setter)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.clp.setter ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commandline)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commandline ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.builtin)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.builtin
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.file)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.file ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.network)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.network
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.shell)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.shell ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.ssh)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.ssh ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.commands.text)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.commands.text ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.console)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.console ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.console.completer)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.console.completer
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.event)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.event ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.i18n)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.i18n ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.interpolation)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.interpolation ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.io)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.io ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.notification)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.notification ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.parser)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.parser ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.parser.visitor)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.parser.visitor ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.registry)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.registry ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.shell)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.shell ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.spring)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.spring ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.terminal)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.terminal ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.vfs)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.vfs ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.vfs.config)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.vfs.config ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.vfs.provider.meta)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.vfs.provider.meta
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.vfs.provider.meta.data)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.vfs.provider.meta.data
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.vfs.provider.meta.data.support)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.vfs.provider.meta.data.support
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.vfs.selector)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.vfs.selector ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.vfs.support)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.vfs.support ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.application)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.application
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.branding)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.branding ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.builder)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.builder ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.command)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.command ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.completer)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.completer
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.config)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.config ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.meta)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.meta ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.plugin)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.plugin ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.plugin.activation)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.plugin.activation
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.plugin.bundle)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.plugin.bundle
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.registry)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.registry ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.scope)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.scope ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.wisdom.shell)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.wisdom.shell ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.gshell.yarn)(version&gt;=1.0.0.alpha-2-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.gshell.yarn ;version=1.0.0.alpha-2-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.oro.text)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.oro.text ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.oro.text.regex)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.oro.text.regex ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core.commands)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core.commands
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core.sshd)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core.sshd
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.gshell.core.vfs.mvn)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.gshell.core.vfs.mvn
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.kernel.jaas.config ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.main.spi)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.kernel.main.spi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.version)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.kernel.version
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.interpolation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.interpolation
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.interpolation.object)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.interpolation.object
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.interpolation.os)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.interpolation.os
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.interpolation.reflection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.interpolation.reflection
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.interpolation.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.interpolation.util
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.util
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.util.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.util.io
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.util.reflection)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.util.reflection
  </require>
  <require extend='false' filter='(&amp;(package=org.codehaus.plexus.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.codehaus.plexus.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.jsecurity)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jsecurity
  </require>
  <require extend='false' filter='(&amp;(package=org.jsecurity.authc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jsecurity.authc
  </require>
  <require extend='false' filter='(&amp;(package=org.jsecurity.mgt)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jsecurity.mgt
  </require>
  <require extend='false' filter='(&amp;(package=org.jsecurity.subject)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jsecurity.subject
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j.helpers)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j.helpers ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.aop ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.aop.framework)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.aop.framework ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.annotation
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.annotation)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.annotation ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.service.importer)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.service.importer ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.testing.support/1.0.0.rc1' presentationname='Apache ServiceMix Kernel :: Testing - Support' symbolicname='org.apache.servicemix.kernel.testing.support' uri='../org/apache/servicemix/kernel/testing/org.apache.servicemix.kernel.testing.support/1.0.0-rc1/org.apache.servicemix.kernel.testing.support-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    23714
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: Testing - Support'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.testing.support'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.testing.support'/>
    <p n='uses' v='org.springframework.osgi.test.platform,org.apache.felix.main,org.osgi.framework,org.apache.commons.logging,org.springframework.osgi.util,org.apache.felix.framework,org.apache.log4j,org.springframework.core.io,org.springframework.osgi.test,org.springframework.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.main)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.main
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.testing.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.testing.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.test)(version&gt;=1.1.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.test ;version=1.1.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.test.platform)(version&gt;=1.1.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.test.platform ;version=1.1.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=1.1.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util ;version=1.1.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.testing.support/1.0.0.rc2' presentationname='Apache ServiceMix Kernel :: Testing - Support' symbolicname='org.apache.servicemix.kernel.testing.support' uri='../org/apache/servicemix/kernel/testing/org.apache.servicemix.kernel.testing.support/1.0.0-rc2/org.apache.servicemix.kernel.testing.support-1.0.0-rc2.jar' version='1.0.0.rc2'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    23492
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: Testing - Support'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.testing.support'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.testing.support'/>
    <p n='uses' v='org.springframework.osgi.test.platform,org.apache.felix.main,org.osgi.framework,org.apache.commons.logging,org.springframework.osgi.util,org.apache.felix.framework,org.apache.log4j,org.springframework.core.io,org.springframework.osgi.test,org.springframework.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.main)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.main
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.testing.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.testing.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.test)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.test ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.test.platform)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.test.platform ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.testing.support/1.1.0' presentationname='Apache ServiceMix Kernel :: Testing - Support' symbolicname='org.apache.servicemix.kernel.testing.support' uri='../org/apache/servicemix/kernel/testing/org.apache.servicemix.kernel.testing.support/1.1.0/org.apache.servicemix.kernel.testing.support-1.1.0.jar' version='1.1.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    42312
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: Testing - Support'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.testing.support'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.testing.support'/>
    <p n='uses' v='org.springframework.osgi.test.platform,org.xml.sax,org.osgi.framework,org.w3c.dom,org.apache.commons.logging,org.apache.servicemix.kernel.main,org.apache.servicemix.kernel.main.spi,org.springframework.osgi.util,org.apache.felix.framework,org.apache.log4j,org.springframework.core.io,javax.xml.parsers,org.apache.felix.framework.util,org.springframework.osgi.test,org.springframework.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.framework.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.framework.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.main)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.kernel.main
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.main.spi)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.kernel.main.spi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.testing.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.testing.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.test)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.test ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.test.platform)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.test.platform ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax ;version=2.0.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.testing.support/1.0.0' presentationname='Apache ServiceMix Kernel :: Testing - Support' symbolicname='org.apache.servicemix.kernel.testing.support' uri='../org/apache/servicemix/kernel/testing/org.apache.servicemix.kernel.testing.support/1.0.0/org.apache.servicemix.kernel.testing.support-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    23490
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: Testing - Support'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.testing.support'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.testing.support'/>
    <p n='uses' v='org.springframework.osgi.test.platform,org.apache.felix.main,org.osgi.framework,org.apache.commons.logging,org.springframework.osgi.util,org.apache.felix.framework,org.apache.log4j,org.springframework.core.io,org.springframework.osgi.test,org.springframework.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.main)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.main
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.testing.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.testing.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.test)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.test ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.test.platform)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.test.platform ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.testing.support/1.0.0.m3' presentationname='Apache ServiceMix Kernel :: Testing - Support' symbolicname='org.apache.servicemix.kernel.testing.support' uri='../org/apache/servicemix/kernel/testing/org.apache.servicemix.kernel.testing.support/1.0-m3/org.apache.servicemix.kernel.testing.support-1.0-m3.jar' version='1.0.0.m3'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    23730
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: Testing - Support'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.testing.support'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.testing.support'/>
    <p n='uses' v='org.springframework.osgi.test.platform,org.apache.felix.main,org.osgi.framework,org.apache.commons.logging,org.springframework.osgi.util,org.apache.felix.framework,org.apache.log4j,org.springframework.core.io,org.springframework.osgi.test,org.springframework.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.main)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.main
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.testing.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.testing.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.test)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.test ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.test.platform)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.test.platform ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.testing.support/1.0.0.m1' presentationname='ServiceMix Kernel :: Testing - Support' symbolicname='org.apache.servicemix.kernel.testing.support' uri='../org/apache/servicemix/kernel/testing/org.apache.servicemix.kernel.testing.support/1.0-m1/org.apache.servicemix.kernel.testing.support-1.0-m1.jar' version='1.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16734
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix Kernel :: Testing - Support'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.testing.support'/>
    <p n='version' t='version' v='1.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.testing.support'/>
    <p n='uses' v='org.springframework.osgi.test.platform,org.osgi.framework,org.apache.commons.logging,org.springframework.osgi.util,org.apache.log4j,org.springframework.core.io,org.springframework.osgi.test,org.springframework.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.testing.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.testing.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.test)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.test ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.test.platform)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.test.platform ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.testing.support/1.0.0.m2' presentationname='ServiceMix Kernel :: Testing - Support' symbolicname='org.apache.servicemix.kernel.testing.support' uri='../org/apache/servicemix/kernel/testing/org.apache.servicemix.kernel.testing.support/1.0-m2/org.apache.servicemix.kernel.testing.support-1.0-m2.jar' version='1.0.0.m2'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16712
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix Kernel :: Testing - Support'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.testing.support'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.testing.support'/>
    <p n='uses' v='org.springframework.osgi.test.platform,org.osgi.framework,org.apache.commons.logging,org.springframework.osgi.util,org.apache.log4j,org.springframework.core.io,org.springframework.osgi.test,org.springframework.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.testing.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.testing.support
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.test)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.test ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.test.platform)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.test.platform ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.jaas.modules/1.1.0' presentationname='Apache ServiceMix Kernel :: JAAS Modules' symbolicname='org.apache.servicemix.kernel.jaas.modules' uri='../org/apache/servicemix/kernel/jaas/org.apache.servicemix.kernel.jaas.modules/1.1.0/org.apache.servicemix.kernel.jaas.modules-1.1.0.jar' version='1.1.0'>
  <description>
    Provides the JAAS Config
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18387
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: JAAS Modules'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.jaas.modules'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.jaas.modules.properties'/>
    <p n='uses' v='org.apache.servicemix.kernel.jaas.modules,javax.security.auth.spi,javax.security.auth.login,org.apache.commons.logging,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.jaas.modules'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.jaas.modules.osgi'/>
    <p n='uses' v='org.apache.servicemix.kernel.jaas.modules,javax.security.auth.spi,javax.security.auth.login,javax.security.auth,javax.security.auth.callback,org.osgi.service.cm'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.config ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.modules)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.modules ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.modules.osgi)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.modules.osgi
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.modules.properties)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.modules.properties
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.jaas.keystore/1.0.0.rc2' presentationname='Apache ServiceMix Kernel :: JAAS Keystore' symbolicname='org.apache.servicemix.kernel.jaas.keystore' uri='../org/apache/servicemix/kernel/jaas/org.apache.servicemix.kernel.jaas.keystore/1.0.0-rc2/org.apache.servicemix.kernel.jaas.keystore-1.0.0-rc2.jar' version='1.0.0.rc2'>
  <description>
    Provides the JAAS Config
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10873
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: JAAS Keystore'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.jaas.keystore'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.config
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.jaas.keystore/1.0.0.rc1' presentationname='Apache ServiceMix Kernel :: JAAS Keystore' symbolicname='org.apache.servicemix.kernel.jaas.keystore' uri='../org/apache/servicemix/kernel/jaas/org.apache.servicemix.kernel.jaas.keystore/1.0.0-rc1/org.apache.servicemix.kernel.jaas.keystore-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    Provides the JAAS Config
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10883
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: JAAS Keystore'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.jaas.keystore'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.config
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.jaas.keystore/1.0.0' presentationname='Apache ServiceMix Kernel :: JAAS Keystore' symbolicname='org.apache.servicemix.kernel.jaas.keystore' uri='../org/apache/servicemix/kernel/jaas/org.apache.servicemix.kernel.jaas.keystore/1.0.0/org.apache.servicemix.kernel.jaas.keystore-1.0.0.jar' version='1.0.0'>
  <description>
    Provides the JAAS Config
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10859
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: JAAS Keystore'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.jaas.keystore'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.config
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.jaas.config/1.0.0.rc1' presentationname='Apache ServiceMix Kernel :: JAAS Config' symbolicname='org.apache.servicemix.kernel.jaas.config' uri='../org/apache/servicemix/kernel/jaas/org.apache.servicemix.kernel.jaas.config/1.0.0-rc1/org.apache.servicemix.kernel.jaas.config-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    Provides the JAAS Config
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    31291
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: JAAS Config'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.jaas.config'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.jaas.config'/>
    <p n='uses' v='javax.security.auth.login,javax.net.ssl'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.boot)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.boot
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=1.0.0.rc1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.config ;version=1.0.0.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.parsing)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.parsing ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.service.exporter.support)(version&gt;=1.1.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.service.exporter.support
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.jaas.config/1.1.0' presentationname='Apache ServiceMix Kernel :: JAAS Config' symbolicname='org.apache.servicemix.kernel.jaas.config' uri='../org/apache/servicemix/kernel/jaas/org.apache.servicemix.kernel.jaas.config/1.1.0/org.apache.servicemix.kernel.jaas.config-1.1.0.jar' version='1.1.0'>
  <description>
    Provides the JAAS Config
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    31247
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: JAAS Config'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.jaas.config'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.jaas.config'/>
    <p n='uses' v='javax.security.auth.login,javax.net.ssl'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.boot)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.boot
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.config ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.parsing)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.parsing ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.service.exporter.support)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.service.exporter.support
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.jaas.config/1.0.0' presentationname='Apache ServiceMix Kernel :: JAAS Config' symbolicname='org.apache.servicemix.kernel.jaas.config' uri='../org/apache/servicemix/kernel/jaas/org.apache.servicemix.kernel.jaas.config/1.0.0/org.apache.servicemix.kernel.jaas.config-1.0.0.jar' version='1.0.0'>
  <description>
    Provides the JAAS Config
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    31264
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: JAAS Config'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.jaas.config'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.jaas.config'/>
    <p n='uses' v='javax.security.auth.login,javax.net.ssl'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.boot)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.boot
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.config ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.parsing)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.parsing ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.service.exporter.support)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.service.exporter.support
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.jaas.config/1.0.0.rc2' presentationname='Apache ServiceMix Kernel :: JAAS Config' symbolicname='org.apache.servicemix.kernel.jaas.config' uri='../org/apache/servicemix/kernel/jaas/org.apache.servicemix.kernel.jaas.config/1.0.0-rc2/org.apache.servicemix.kernel.jaas.config-1.0.0-rc2.jar' version='1.0.0.rc2'>
  <description>
    Provides the JAAS Config
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    31263
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: JAAS Config'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.jaas.config'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.jaas.config'/>
    <p n='uses' v='javax.security.auth.login,javax.net.ssl'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.boot)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.boot
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.config ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.parsing)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.parsing ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.service.exporter.support)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.service.exporter.support
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.jaas.boot/1.0.0' presentationname='Apache ServiceMix Kernel :: JAAS Boot' symbolicname='org.apache.servicemix.kernel.jaas.boot' uri='../org/apache/servicemix/kernel/jaas/org.apache.servicemix.kernel.jaas.boot/1.0.0/org.apache.servicemix.kernel.jaas.boot-1.0.0.jar' version='1.0.0'>
  <description>
    Provides the JAAS Boot classes
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10163
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: JAAS Boot'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.jaas.boot'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.jaas.boot'/>
    <p n='uses' v='javax.security.auth.spi,javax.security.auth.login,org.osgi.framework,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.boot)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.boot ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.jaas.boot/1.0.0.rc2' presentationname='Apache ServiceMix Kernel :: JAAS Boot' symbolicname='org.apache.servicemix.kernel.jaas.boot' uri='../org/apache/servicemix/kernel/jaas/org.apache.servicemix.kernel.jaas.boot/1.0.0-rc2/org.apache.servicemix.kernel.jaas.boot-1.0.0-rc2.jar' version='1.0.0.rc2'>
  <description>
    Provides the JAAS Boot classes
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10181
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: JAAS Boot'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.jaas.boot'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.jaas.boot'/>
    <p n='uses' v='javax.security.auth.spi,javax.security.auth.login,org.osgi.framework,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='1.0.0.rc2'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.boot)(version&gt;=1.0.0.rc2))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.boot ;version=1.0.0.rc2
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.jaas.boot/1.1.0' presentationname='Apache ServiceMix Kernel :: JAAS Boot' symbolicname='org.apache.servicemix.kernel.jaas.boot' uri='../org/apache/servicemix/kernel/jaas/org.apache.servicemix.kernel.jaas.boot/1.1.0/org.apache.servicemix.kernel.jaas.boot-1.1.0.jar' version='1.1.0'>
  <description>
    Provides the JAAS Boot classes
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10169
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: JAAS Boot'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.jaas.boot'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.jaas.boot'/>
    <p n='uses' v='javax.security.auth.spi,javax.security.auth.login,org.osgi.framework,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.boot)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.boot ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.kernel.jaas.boot/1.0.0.rc1' presentationname='Apache ServiceMix Kernel :: JAAS Boot' symbolicname='org.apache.servicemix.kernel.jaas.boot' uri='../org/apache/servicemix/kernel/jaas/org.apache.servicemix.kernel.jaas.boot/1.0.0-rc1/org.apache.servicemix.kernel.jaas.boot-1.0.0-rc1.jar' version='1.0.0.rc1'>
  <description>
    Provides the JAAS Boot classes
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10187
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Kernel :: JAAS Boot'/>
    <p n='symbolicname' v='org.apache.servicemix.kernel.jaas.boot'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.jaas.boot'/>
    <p n='uses' v='javax.security.auth.spi,javax.security.auth.login,org.osgi.framework,javax.security.auth,javax.security.auth.callback'/>
    <p n='version' t='version' v='1.0.0.rc1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.boot)(version&gt;=1.0.0.rc1))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.boot ;version=1.0.0.rc1
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='servicemix-soap2/2008.1.0' presentationname='ServiceMix :: SOAP2' symbolicname='servicemix-soap2' uri='../org/apache/servicemix/servicemix-soap2/2008.01/servicemix-soap2-2008.01.jar' version='2008.1.0'>
  <description>
    SOAP Stack v2
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    180078
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: SOAP2'/>
    <p n='symbolicname' v='servicemix-soap2'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.wsdl.validator'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions.soap,javax.wsdl.extensions,org.apache.servicemix.soap.wsdl,org.apache.servicemix.soap.util,javax.xml.namespace'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.api'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.soap.model.wsdl1'/>
    <p n='uses' v='org.apache.servicemix.soap.api.model.wsdl1,org.apache.servicemix.soap.bindings.soap.model'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.http.model'/>
    <p n='uses' v='javax.xml.namespace,org.apache.servicemix.soap.api.model.wsdl2'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.soap.interceptors'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.apache.servicemix.soap.bindings.soap.model.wsdl1,org.apache.servicemix.soap.util.stax,org.apache.servicemix.soap.util,javax.xml.namespace,org.apache.servicemix.soap.bindings.soap,org.apache.servicemix.soap.core,org.w3c.dom,org.apache.servicemix.soap.api.model,javax.xml.transform,javax.xml.transform.dom,org.apache.servicemix.soap.bindings.soap.model,javax.xml.stream'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.interceptors.xml'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.apache.servicemix.soap.util.stax,org.apache.servicemix.soap.util,org.w3c.dom,org.apache.servicemix.soap.core,javax.xml.transform,javax.xml.stream'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.ws.security'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.apache.servicemix.soap.interceptors.xml,javax.xml.namespace,org.apache.servicemix.soap.bindings.soap,org.apache.servicemix.soap.core'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.soap'/>
    <p n='uses' v='org.apache.servicemix.soap.api,javax.xml.namespace,javax.xml.transform'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.soap.impl'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.apache.servicemix.soap.bindings.soap.model.wsdl1,org.apache.servicemix.soap.bindings.soap.interceptors,org.apache.servicemix.soap.interceptors.mime,org.apache.servicemix.soap.interceptors.xml,org.apache.servicemix.soap.bindings.soap.model.wsdl2,org.apache.servicemix.soap.bindings.soap,org.apache.servicemix.soap.interceptors.wsdl,org.apache.servicemix.soap.interceptors.jbi,org.apache.servicemix.soap.core.model'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.core.model'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.servicemix.soap.core,org.apache.servicemix.soap.api.model.wsdl1,org.apache.servicemix.soap.api.model,org.apache.servicemix.soap.api.model.wsdl2'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.api.model.wsdl2'/>
    <p n='uses' v='org.apache.ws.commons.schema,org.apache.servicemix.soap.api.model'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.interceptors.mime'/>
    <p n='uses' v='org.apache.servicemix.soap.api,javax.mail.util,javax.mail.internet,javax.activation,org.apache.servicemix.soap.core,javax.mail'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.interceptors.jbi'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.apache.servicemix.soap.bindings.soap.model.wsdl1,javax.jbi.messaging,org.apache.servicemix.soap.util.stax,javax.jbi.component,javax.xml.namespace,javax.activation,org.apache.servicemix.soap.util,org.apache.servicemix.soap.bindings.soap,org.w3c.dom,org.apache.servicemix.soap.core,org.apache.servicemix.soap.api.model,javax.jbi,javax.xml.transform,javax.xml.transform.dom,javax.security.auth,javax.xml.stream'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.http'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.soap.model'/>
    <p n='uses' v='org.apache.servicemix.soap.api.model'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.ws.addressing'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.apache.servicemix.soap.bindings.soap,org.apache.servicemix.soap.core'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.http.interceptors'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.apache.servicemix.soap.bindings.http.model,org.apache.ws.commons.schema,org.apache.servicemix.soap.util,javax.xml.namespace,org.apache.servicemix.soap.core,org.w3c.dom,org.apache.servicemix.soap.api.model,javax.xml.transform,org.apache.servicemix.soap.api.model.wsdl2,javax.xml.transform.dom'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.util.stax'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.xml.sax,javax.xml.namespace,org.apache.servicemix.soap.util,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.stream,javax.xml.stream.util'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.wsdl'/>
    <p n='uses' v='org.apache.woden.wsdl20,org.apache.servicemix.soap.api,org.apache.servicemix.soap.bindings.soap.model.wsdl1,javax.wsdl.extensions.soap,org.apache.servicemix.soap.bindings.http.model,javax.xml.namespace,org.apache.servicemix.soap.bindings.soap,org.apache.woden.xml,org.apache.servicemix.soap.bindings.soap.impl,org.apache.woden.wsdl20.extensions,javax.wsdl.extensions.soap12,org.apache.servicemix.soap.api.model.wsdl2,javax.wsdl.factory,org.apache.woden.wsdl20.xml,org.apache.servicemix.soap.interceptors.jbi,javax.wsdl,org.apache.woden.wsdl20.extensions.http,org.apache.woden.internal.wsdl20.extensions.http,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.servicemix.soap.api.model,org.apache.servicemix.soap.bindings.http.impl,javax.wsdl.extensions,org.apache.woden.wsdl20.enumeration,org.apache.servicemix.soap.api.model.wsdl1'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.util'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.servicemix.soap.api,org.xml.sax,javax.activation,javax.xml.namespace,javax.xml.parsers,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.soap.model.wsdl2'/>
    <p n='uses' v='org.apache.servicemix.soap.bindings.soap.model,org.apache.servicemix.soap.api.model.wsdl2'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.core'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.apache.commons.logging'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.api.model'/>
    <p n='uses' v='org.apache.servicemix.soap.api,javax.xml.namespace'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.interceptors.wsdl'/>
    <p n='uses' v='org.apache.servicemix.soap.api,javax.xml.namespace,org.apache.servicemix.soap.bindings.soap,org.apache.servicemix.soap.core,org.apache.servicemix.soap.api.model,javax.xml.stream'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.http.impl'/>
    <p n='uses' v='org.apache.servicemix.soap.bindings.http.interceptors,org.apache.servicemix.soap.api,org.apache.servicemix.soap.bindings.http.model,javax.xml.namespace,org.apache.servicemix.soap.interceptors.xml,org.apache.servicemix.soap.interceptors.mime,org.apache.servicemix.soap.interceptors.jbi,org.apache.servicemix.soap.core.model'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.api.model.wsdl1'/>
    <p n='uses' v='javax.xml.namespace,org.apache.servicemix.soap.api.model'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.api)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.api ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.api.model)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.api.model ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.api.model.wsdl1)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.api.model.wsdl1 ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.api.model.wsdl2)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.api.model.wsdl2 ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.http)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.http ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.http.impl)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.http.impl
    
    
    
    
    
    
    
    
    
    
    
     ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.http.interceptors)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.http.interceptors
    
    
    
    
    
    
    
    
    
    
    
     ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.http.model)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.http.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.soap)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.soap ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.soap.impl)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.soap.impl
    
    
    
    
    
    
    
    
    
    
    
     ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.soap.interceptors)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.soap.interceptors
    
    
    
    
    
    
    
    
    
    
    
     ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.soap.model)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.soap.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.soap.model.wsdl1)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.soap.model.wsdl1
    
    
    
    
    
    
    
    
    
    
    
     ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.soap.model.wsdl2)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.soap.model.wsdl2
    
    
    
    
    
    
    
    
    
    
    
     ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.core)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.core ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.core.model)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.core.model ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.interceptors.jbi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.interceptors.jbi
    
    
    
    
    
    
    
    
    
    
    
     ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.interceptors.mime)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.interceptors.mime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.interceptors.wsdl)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.interceptors.wsdl
    
    
    
    
    
    
    
    
    
    
    
     ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.interceptors.xml)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.interceptors.xml
    
    
    
    
    
    
    
    
    
    
    
     ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.util.stax)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.util.stax ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.ws.addressing)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.ws.addressing ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.ws.security)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.ws.security ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.wsdl)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.wsdl ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.wsdl.validator)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.wsdl.validator ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.internal.wsdl20.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.internal.wsdl20.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20.enumeration)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20.enumeration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='servicemix-soap2/2009.1.0' presentationname='ServiceMix :: SOAP2' symbolicname='servicemix-soap2' uri='../org/apache/servicemix/servicemix-soap2/2009.01/servicemix-soap2-2009.01.jar' version='2009.1.0'>
  <description>
    SOAP Stack v2
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    189652
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: SOAP2'/>
    <p n='symbolicname' v='servicemix-soap2'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.wsdl.validator'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions.soap,javax.wsdl.extensions,org.apache.servicemix.soap.wsdl,org.apache.servicemix.soap.util,javax.xml.namespace'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.api'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.soap.model.wsdl1'/>
    <p n='uses' v='org.apache.servicemix.soap.api.model.wsdl1,org.apache.servicemix.soap.bindings.soap.model'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.http.model'/>
    <p n='uses' v='javax.xml.namespace,org.apache.servicemix.soap.api.model.wsdl2'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.soap.interceptors'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.apache.servicemix.soap.bindings.soap.model.wsdl1,org.apache.servicemix.soap.util.stax,org.apache.servicemix.soap.util,javax.xml.namespace,org.apache.servicemix.soap.bindings.soap,org.apache.servicemix.soap.core,org.w3c.dom,org.apache.servicemix.soap.api.model,javax.xml.transform,javax.xml.transform.dom,org.apache.servicemix.soap.bindings.soap.model,javax.xml.stream'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.ws.security'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.apache.servicemix.soap.interceptors.xml,javax.xml.namespace,org.apache.servicemix.soap.bindings.soap,org.apache.servicemix.soap.core'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.interceptors.xml'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.apache.servicemix.soap.util.stax,org.apache.servicemix.soap.util,org.w3c.dom,org.apache.servicemix.soap.core,javax.xml.transform,javax.xml.stream'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.soap'/>
    <p n='uses' v='org.apache.servicemix.soap.api,javax.xml.namespace,javax.xml.transform'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.soap.impl'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.apache.servicemix.soap.bindings.soap.model.wsdl1,org.apache.servicemix.soap.bindings.soap.interceptors,org.apache.servicemix.soap.interceptors.mime,org.apache.servicemix.soap.interceptors.xml,org.apache.servicemix.soap.bindings.soap.model.wsdl2,org.apache.servicemix.soap.bindings.soap,org.apache.servicemix.soap.interceptors.wsdl,org.apache.servicemix.soap.interceptors.jbi,org.apache.servicemix.soap.core.model'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.core.model'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.apache.ws.commons.schema,javax.xml.namespace,org.apache.servicemix.soap.core,org.apache.servicemix.soap.api.model.wsdl1,org.apache.servicemix.soap.api.model,org.apache.servicemix.soap.api.model.wsdl2'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.api.model.wsdl2'/>
    <p n='uses' v='org.apache.ws.commons.schema,org.apache.servicemix.soap.api.model'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.interceptors.mime'/>
    <p n='uses' v='org.apache.servicemix.soap.api,javax.mail.util,javax.mail.internet,javax.activation,org.apache.servicemix.soap.core,javax.mail'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.interceptors.jbi'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.apache.servicemix.soap.bindings.soap.model.wsdl1,javax.jbi.messaging,org.apache.servicemix.soap.util.stax,javax.jbi.component,javax.xml.namespace,javax.activation,org.apache.servicemix.soap.util,org.apache.servicemix.soap.bindings.soap,org.w3c.dom,org.apache.servicemix.soap.core,org.apache.servicemix.soap.api.model,javax.jbi,javax.xml.transform,javax.xml.transform.dom,javax.security.auth,javax.xml.stream'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.soap.model'/>
    <p n='uses' v='org.apache.servicemix.soap.api.model'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.http'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.ws.addressing'/>
    <p n='uses' v='javax.wsdl,org.apache.servicemix.soap.api,org.apache.servicemix.soap.bindings.soap.model.wsdl1,javax.jbi.messaging,org.apache.servicemix.soap.wsdl,javax.wsdl.xml,org.apache.servicemix.soap.bindings.soap.interceptors,javax.jbi.component,org.apache.servicemix.soap.util,javax.xml.namespace,org.apache.servicemix.soap.bindings.soap,org.apache.servicemix.soap.core,org.w3c.dom,org.apache.servicemix.soap.api.model,javax.jbi.servicedesc,org.apache.servicemix.soap.interceptors.wsdl,org.apache.servicemix.common.tools.wsdl,javax.wsdl.factory,org.apache.servicemix.common.util,org.apache.servicemix.soap.api.model.wsdl1,org.apache.servicemix.soap.interceptors.jbi'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.http.interceptors'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.apache.servicemix.soap.bindings.http.model,org.apache.ws.commons.schema,org.apache.servicemix.soap.util,javax.xml.namespace,org.apache.servicemix.soap.core,org.w3c.dom,org.apache.servicemix.soap.api.model,javax.xml.transform,org.apache.servicemix.soap.api.model.wsdl2,javax.xml.transform.dom'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.util.stax'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.xml.sax,javax.xml.namespace,org.apache.servicemix.soap.util,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.xml.sax.helpers,javax.xml.stream,javax.xml.stream.util'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.wsdl'/>
    <p n='uses' v='org.apache.woden.wsdl20,org.apache.servicemix.soap.api,org.apache.servicemix.soap.bindings.soap.model.wsdl1,javax.wsdl.extensions.soap,org.apache.servicemix.soap.bindings.http.model,javax.xml.namespace,org.apache.servicemix.soap.bindings.soap,org.apache.woden.xml,org.apache.servicemix.soap.bindings.soap.impl,org.apache.woden.wsdl20.extensions,javax.wsdl.extensions.soap12,org.apache.servicemix.soap.api.model.wsdl2,javax.wsdl.factory,org.apache.woden.wsdl20.xml,org.apache.servicemix.soap.interceptors.jbi,javax.wsdl,org.apache.woden.wsdl20.extensions.http,org.apache.woden.internal.wsdl20.extensions.http,javax.wsdl.xml,org.apache.ws.commons.schema,org.apache.servicemix.soap.api.model,org.apache.servicemix.soap.bindings.http.impl,javax.wsdl.extensions,org.apache.woden.wsdl20.enumeration,org.apache.servicemix.soap.api.model.wsdl1'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.util'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.servicemix.soap.api,org.xml.sax,javax.activation,javax.xml.namespace,javax.xml.parsers,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.soap.model.wsdl2'/>
    <p n='uses' v='org.apache.servicemix.soap.bindings.soap.model,org.apache.servicemix.soap.api.model.wsdl2'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.core'/>
    <p n='uses' v='org.apache.servicemix.soap.api,org.apache.commons.logging'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.api.model'/>
    <p n='uses' v='org.apache.servicemix.soap.api,javax.xml.namespace'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.interceptors.wsdl'/>
    <p n='uses' v='org.apache.servicemix.soap.api,javax.xml.namespace,org.apache.servicemix.soap.bindings.soap,org.apache.servicemix.soap.core,org.apache.servicemix.soap.api.model,javax.xml.stream'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.jbi.impl'/>
    <p n='uses' v='org.apache.servicemix.soap.core.model'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.http.impl'/>
    <p n='uses' v='org.apache.servicemix.soap.bindings.http.interceptors,org.apache.servicemix.soap.api,org.apache.servicemix.soap.bindings.http.model,javax.xml.namespace,org.apache.servicemix.soap.interceptors.xml,org.apache.servicemix.soap.interceptors.mime,org.apache.servicemix.soap.interceptors.jbi,org.apache.servicemix.soap.core.model'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.bindings.jbi'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.soap.api.model.wsdl1'/>
    <p n='uses' v='javax.xml.namespace,org.apache.servicemix.soap.api.model'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.tools.wsdl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.tools.wsdl ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.api)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.api ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.api.model)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.api.model ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.api.model.wsdl1)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.api.model.wsdl1 ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.api.model.wsdl2)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.api.model.wsdl2 ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.http)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.http ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.http.impl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.http.impl
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.http.interceptors)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.http.interceptors
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.http.model)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.http.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.jbi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.jbi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.jbi.impl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.jbi.impl
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.soap)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.soap ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.soap.impl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.soap.impl
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.soap.interceptors)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.soap.interceptors
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.soap.model)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.soap.model
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.soap.model.wsdl1)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.soap.model.wsdl1
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.soap.model.wsdl2)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.soap.model.wsdl2
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.core)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.core ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.core.model)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.core.model ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.interceptors.jbi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.interceptors.jbi
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.interceptors.mime)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.interceptors.mime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.interceptors.wsdl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.interceptors.wsdl
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.interceptors.xml)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.interceptors.xml
    
    
    
    
    
    
    
    
    
    
    
     ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.util.stax)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.util.stax ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.ws.addressing)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.ws.addressing ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.ws.security)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.ws.security ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.wsdl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.wsdl ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.wsdl.validator)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.wsdl.validator ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.internal.wsdl20.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.internal.wsdl20.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20.enumeration)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20.enumeration
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20.extensions
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.ws.commons.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.ws.commons.schema
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='servicemix-cxf-se/2008.1.0' presentationname='ServiceMix :: CXF Service Engine' symbolicname='servicemix-cxf-se' uri='../org/apache/servicemix/servicemix-cxf-se/2008.01/servicemix-cxf-se-2008.01.jar' version='2008.1.0'>
  <description>
    A CXF Service Engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    35947
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: CXF Service Engine'/>
    <p n='symbolicname' v='servicemix-cxf-se'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxfse.interceptors'/>
    <p n='uses' v='org.apache.cxf.attachment,javax.jbi.messaging,org.apache.cxf.message,javax.activation,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxfse'/>
    <p n='uses' v='org.apache.cxf.jaxws,javax.xml.namespace,javax.jbi.management,org.apache.cxf.bus.spring,org.apache.cxf.jaxws.support,javax.naming,javax.wsdl.factory,org.apache.servicemix.jbi.api,org.apache.servicemix.common,javax.xml.ws,org.springframework.beans.factory,org.apache.cxf.service,javax.wsdl,org.apache.servicemix.cxfse.interceptors,javax.jbi.messaging,org.apache.cxf.endpoint,javax.wsdl.xml,javax.jbi.component,org.apache.servicemix.id,org.w3c.dom,org.apache.commons.logging,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.interceptor,org.apache.servicemix.cxfse.support,org.apache.cxf.transport.jbi,javax.annotation,org.apache.servicemix.common.endpoints,org.apache.cxf,org.springframework.util,org.apache.cxf.wsdl11'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.cxfse'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxfse.support'/>
    <p n='uses' v='org.springframework.util'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.cxf.cxf-bundle)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.cxf.cxf-bundle; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.cxf.cxf-rt-bindings-jbi)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.cxf.cxf-rt-bindings-jbi; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.cxf.cxf-rt-transports-jbi)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.cxf.cxf-rt-transports-jbi; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.binding.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.binding.jbi
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.jbi
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.cxfse)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.cxfse
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxfse)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxfse ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxfse.interceptors)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxfse.interceptors ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxfse.support)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxfse.support ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.id)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.id
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='servicemix-cxf-se/2009.1.0' presentationname='ServiceMix :: CXF Service Engine' symbolicname='servicemix-cxf-se' uri='../org/apache/servicemix/servicemix-cxf-se/2009.01/servicemix-cxf-se-2009.01.jar' version='2009.1.0'>
  <description>
    A CXF Service Engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    37003
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: CXF Service Engine'/>
    <p n='symbolicname' v='servicemix-cxf-se'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxfse.interceptors'/>
    <p n='uses' v='javax.activation,javax.jbi.messaging,org.apache.cxf.message,org.apache.cxf.attachment,org.apache.cxf.interceptor,org.apache.cxf.phase'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.cxfse'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxfse'/>
    <p n='uses' v='org.apache.servicemix.id,javax.annotation,org.apache.commons.logging,org.apache.cxf.bus.spring,org.apache.cxf.frontend,javax.jbi.component,org.apache.servicemix.common,org.apache.cxf.jaxws.support,org.apache.servicemix.cxfse.support,javax.xml.namespace,javax.wsdl.xml,org.apache.cxf.transport.jbi,org.apache.cxf.jaxws,org.apache.cxf.transport,org.springframework.beans.factory,org.apache.cxf.interceptor,javax.jbi.management,javax.naming,org.apache.cxf.aegis.databinding,javax.wsdl.factory,org.apache.cxf.service.factory,org.apache.servicemix.cxfse.interceptors,org.springframework.util,org.apache.cxf.service,org.apache.cxf,org.apache.cxf.service.model,org.apache.cxf.databinding,org.apache.cxf.binding,org.w3c.dom,javax.wsdl,org.apache.servicemix.jbi.api,org.apache.cxf.wsdl11,javax.jbi.messaging,org.apache.cxf.endpoint,javax.xml.ws,org.apache.servicemix.common.endpoints'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.cxfse.support'/>
    <p n='uses' v='org.springframework.util'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.cxf.cxf-bundle)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.cxf.cxf-bundle; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.cxf.cxf-rt-bindings-jbi)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.cxf.cxf-rt-bindings-jbi; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.apache.cxf.cxf-rt-transports-jbi)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.apache.cxf.cxf-rt-transports-jbi; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.binding.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.binding.jbi
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.cxf.transport.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.cxf.transport.jbi
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.cxfse)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.cxfse
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.aegis.databinding)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.aegis.databinding ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.attachment)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.attachment ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.binding)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.binding ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.bus.spring)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.bus.spring ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.databinding)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.databinding ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.endpoint)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.endpoint ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.frontend)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.frontend ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.interceptor)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.interceptor ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.jaxws.support)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.jaxws.support ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.message)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.message ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.phase)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.phase ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.factory)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.factory ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.service.model)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.service.model ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.transport.jbi)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.transport.jbi ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.cxf.wsdl11)(version&gt;=2.1.0)(!(version&gt;=3.0.0)))' multiple='false' name='package' optional='false'>
    Import package org.apache.cxf.wsdl11 ;version=[2.1.0,3.0.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxfse)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxfse ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxfse.interceptors)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxfse.interceptors ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.cxfse.support)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.cxfse.support ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.id)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.id
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='servicemix-ftp/2008.1.0' presentationname='ServiceMix :: FTP' symbolicname='servicemix-ftp' uri='../org/apache/servicemix/servicemix-ftp/2008.01/servicemix-ftp-2008.01.jar' version='2008.1.0'>
  <description>
    An FTP component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    35917
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: FTP'/>
    <p n='symbolicname' v='servicemix-ftp'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.ftp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.ftp'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.commons.net.ftp,org.apache.servicemix.executors,org.apache.commons.pool.impl,javax.xml.namespace,org.apache.commons.logging,javax.jbi.servicedesc,javax.jbi.management,javax.jbi,org.apache.servicemix.common.locks,org.apache.servicemix.components.util,org.apache.servicemix.common.util,org.apache.servicemix.common.endpoints,org.apache.servicemix.common,org.apache.commons.pool,org.springframework.beans.factory,org.apache.servicemix.common.locks.impl,org.apache.commons.net'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.ftp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.ftp
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.ftp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net.ftp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.pool ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool.impl)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.pool.impl ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks.impl)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks.impl ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.components.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.components.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.ftp)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.ftp ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
</resource>
<resource id='servicemix-ftp/2009.1.0' presentationname='ServiceMix :: FTP' symbolicname='servicemix-ftp' uri='../org/apache/servicemix/servicemix-ftp/2009.01/servicemix-ftp-2009.01.jar' version='2009.1.0'>
  <description>
    An FTP component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    38020
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: FTP'/>
    <p n='symbolicname' v='servicemix-ftp'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.ftp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.ftp'/>
    <p n='uses' v='org.apache.commons.net.ftp,javax.xml.namespace,org.apache.commons.pool.impl,javax.jbi.management,org.apache.servicemix.components.util,org.apache.servicemix.common,org.springframework.beans.factory,javax.jbi.messaging,org.apache.servicemix.executors,javax.jbi.servicedesc,org.apache.commons.logging,javax.jbi,org.apache.servicemix.common.locks,org.apache.servicemix.common.util,org.apache.servicemix.common.endpoints,org.apache.commons.pool,org.apache.servicemix.common.locks.impl,org.apache.commons.net'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.ftp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.ftp
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.net.ftp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.net.ftp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.pool ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.pool.impl)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.pool.impl ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks.impl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks.impl ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.components.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.components.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.ftp)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.ftp ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jsr311-api-0.8/1.3.0' presentationname='Apache ServiceMix Specs :: JSR311 API 0.8' symbolicname='org.apache.servicemix.specs.jsr311-api-0.8' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jsr311-api-0.8/1.3.0/org.apache.servicemix.specs.jsr311-api-0.8-1.3.0.jar' version='1.3.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    55163
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JSR311 API 0.8'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jsr311-api-0.8'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.ws.rs'/>
    <p n='uses' v='javax.ws.rs.core'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.ws.rs.ext'/>
    <p n='uses' v='javax.ws.rs,javax.ws.rs.core'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.ws.rs.core'/>
    <p n='uses' v='javax.ws.rs,javax.ws.rs.ext'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.core ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.ext ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jsr311-api-0.8/1.2.0' presentationname='Apache ServiceMix Specs :: JSR311 API 0.8' symbolicname='org.apache.servicemix.specs.jsr311-api-0.8' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jsr311-api-0.8/1.2.0/org.apache.servicemix.specs.jsr311-api-0.8-1.2.0.jar' version='1.2.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    55219
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JSR311 API 0.8'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jsr311-api-0.8'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.ws.rs'/>
    <p n='uses' v='javax.ws.rs.core'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.ws.rs.ext'/>
    <p n='uses' v='javax.ws.rs,javax.ws.rs.core'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.ws.rs.core'/>
    <p n='uses' v='javax.ws.rs,javax.ws.rs.ext'/>
    <p n='version' t='version' v='0.8.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.core ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=0.8.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.ext ;version=0.8.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxb-api-2.1/1.0.1' presentationname='Apache ServiceMix Specs :: JAXB API 2.1' symbolicname='org.apache.servicemix.specs.jaxb-api-2.1' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxb-api-2.1/1.0.1/org.apache.servicemix.specs.jaxb-api-2.1-1.0.1.jar' version='1.0.1'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    86382
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXB API 2.1'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxb-api-2.1'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.attachment'/>
    <p n='uses' v='javax.activation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.helpers'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,javax.xml.parsers,javax.xml.bind,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.util'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation.adapters'/>
    <p n='uses' v='javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.parsers,org.w3c.dom,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.bind.annotation,javax.xml.transform,javax.xml.validation,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.helpers)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.helpers ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxb-api-2.1/1.1.1' presentationname='Apache ServiceMix Specs :: JAXB API 2.1' symbolicname='org.apache.servicemix.specs.jaxb-api-2.1' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxb-api-2.1/1.1.1/org.apache.servicemix.specs.jaxb-api-2.1-1.1.1.jar' version='1.1.1'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    86649
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXB API 2.1'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxb-api-2.1'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.attachment'/>
    <p n='uses' v='javax.activation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.helpers'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,javax.xml.parsers,javax.xml.bind,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.util'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation.adapters'/>
    <p n='uses' v='javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.parsers,org.w3c.dom,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.bind.annotation,javax.xml.transform,javax.xml.validation,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.helpers)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.helpers ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxb-api-2.1/1.2.0' presentationname='Apache ServiceMix Specs :: JAXB API 2.1' symbolicname='org.apache.servicemix.specs.jaxb-api-2.1' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxb-api-2.1/1.2.0/org.apache.servicemix.specs.jaxb-api-2.1-1.2.0.jar' version='1.2.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    87927
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXB API 2.1'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxb-api-2.1'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.attachment'/>
    <p n='uses' v='javax.activation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.helpers'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,javax.xml.parsers,javax.xml.bind,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.util'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation.adapters'/>
    <p n='uses' v='javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.parsers,org.w3c.dom,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.bind.annotation,javax.xml.transform,javax.xml.validation,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.helpers)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.helpers ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxb-api-2.1/1.3.0' presentationname='Apache ServiceMix Specs :: JAXB API 2.1' symbolicname='org.apache.servicemix.specs.jaxb-api-2.1' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxb-api-2.1/1.3.0/org.apache.servicemix.specs.jaxb-api-2.1-1.3.0.jar' version='1.3.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    87836
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXB API 2.1'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxb-api-2.1'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.attachment'/>
    <p n='uses' v='javax.activation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.helpers'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,javax.xml.parsers,javax.xml.bind,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.util'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation.adapters'/>
    <p n='uses' v='javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.parsers,org.w3c.dom,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.bind.annotation,javax.xml.transform,javax.xml.validation,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.helpers)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.helpers ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxb-api-2.1/1.1.0' presentationname='Apache ServiceMix Specs :: JAXB API 2.1' symbolicname='org.apache.servicemix.specs.jaxb-api-2.1' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxb-api-2.1/1.1.0/org.apache.servicemix.specs.jaxb-api-2.1-1.1.0.jar' version='1.1.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    86658
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXB API 2.1'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxb-api-2.1'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.attachment'/>
    <p n='uses' v='javax.activation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.helpers'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,javax.xml.parsers,javax.xml.bind,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.util'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation.adapters'/>
    <p n='uses' v='javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.parsers,org.w3c.dom,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.bind.annotation,javax.xml.transform,javax.xml.validation,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.helpers)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.helpers ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxb-api-2.1/1.0.0' presentationname='Apache ServiceMix Specs :: JAXB API 2.1' symbolicname='org.apache.servicemix.specs.jaxb-api-2.1' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxb-api-2.1/1.0.0/org.apache.servicemix.specs.jaxb-api-2.1-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    86394
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXB API 2.1'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxb-api-2.1'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.attachment'/>
    <p n='uses' v='javax.activation'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.helpers'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,javax.xml.parsers,javax.xml.bind,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.util'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation.adapters'/>
    <p n='uses' v='javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.parsers,org.w3c.dom,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.namespace,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.bind.annotation,javax.xml.transform,javax.xml.validation,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.helpers)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.helpers ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.specs.stax-api-1.0/1.1.1' presentationname='Apache ServiceMix Specs :: STAX API 1.0' symbolicname='org.apache.servicemix.specs.stax-api-1.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.stax-api-1.0/1.1.1/org.apache.servicemix.specs.stax-api-1.0-1.1.1.jar' version='1.1.1'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    43925
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: STAX API 1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.stax-api-1.0'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.events'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.util'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.transform,javax.xml.stream.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.stax-api-1.0/1.0.1' presentationname='Apache ServiceMix Specs :: STAX API 1.0' symbolicname='org.apache.servicemix.specs.stax-api-1.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.stax-api-1.0/1.0.1/org.apache.servicemix.specs.stax-api-1.0-1.0.1.jar' version='1.0.1'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    43711
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: STAX API 1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.stax-api-1.0'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.events'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.util'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.transform,javax.xml.stream.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.stax-api-1.0/1.3.0' presentationname='Apache ServiceMix Specs :: STAX API 1.0' symbolicname='org.apache.servicemix.specs.stax-api-1.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.stax-api-1.0/1.3.0/org.apache.servicemix.specs.stax-api-1.0-1.3.0.jar' version='1.3.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    45137
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: STAX API 1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.stax-api-1.0'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.events'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.util'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.transform,javax.xml.stream.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.stax-api-1.0/1.2.0' presentationname='Apache ServiceMix Specs :: STAX API 1.0' symbolicname='org.apache.servicemix.specs.stax-api-1.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.stax-api-1.0/1.2.0/org.apache.servicemix.specs.stax-api-1.0-1.2.0.jar' version='1.2.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    45189
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: STAX API 1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.stax-api-1.0'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.events'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.util'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.transform,javax.xml.stream.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.stax-api-1.0/1.0.0' presentationname='Apache ServiceMix Specs :: STAX API 1.0' symbolicname='org.apache.servicemix.specs.stax-api-1.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.stax-api-1.0/1.0.0/org.apache.servicemix.specs.stax-api-1.0-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    43663
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: STAX API 1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.stax-api-1.0'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.events'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.util'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.transform,javax.xml.stream.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.stax-api-1.0/1.1.0' presentationname='Apache ServiceMix Specs :: STAX API 1.0' symbolicname='org.apache.servicemix.specs.stax-api-1.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.stax-api-1.0/1.1.0/org.apache.servicemix.specs.stax-api-1.0-1.1.0.jar' version='1.1.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    43923
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: STAX API 1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.stax-api-1.0'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.events'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.util'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.transform,javax.xml.stream.util'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.saaj-api-1.3/1.3.0' presentationname='Apache ServiceMix Specs :: SAAJ API 1.3' symbolicname='org.apache.servicemix.specs.saaj-api-1.3' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.saaj-api-1.3/1.3.0/org.apache.servicemix.specs.saaj-api-1.3-1.3.0.jar' version='1.3.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    41803
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: SAAJ API 1.3'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.saaj-api-1.3'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.soap'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.namespace,javax.activation,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.specs.saaj-api-1.3/1.2.0' presentationname='Apache ServiceMix Specs :: SAAJ API 1.3' symbolicname='org.apache.servicemix.specs.saaj-api-1.3' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.saaj-api-1.3/1.2.0/org.apache.servicemix.specs.saaj-api-1.3-1.2.0.jar' version='1.2.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    41861
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: SAAJ API 1.3'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.saaj-api-1.3'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.soap'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.namespace,javax.activation,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.specs.saaj-api-1.3/1.0.0' presentationname='Apache ServiceMix Specs :: SAAJ API 1.3' symbolicname='org.apache.servicemix.specs.saaj-api-1.3' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.saaj-api-1.3/1.0.0/org.apache.servicemix.specs.saaj-api-1.3-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    40316
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: SAAJ API 1.3'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.saaj-api-1.3'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.soap'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.namespace,javax.activation,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.specs.saaj-api-1.3/1.1.0' presentationname='Apache ServiceMix Specs :: SAAJ API 1.3' symbolicname='org.apache.servicemix.specs.saaj-api-1.3' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.saaj-api-1.3/1.1.0/org.apache.servicemix.specs.saaj-api-1.3-1.1.0.jar' version='1.1.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    40585
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: SAAJ API 1.3'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.saaj-api-1.3'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.soap'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.namespace,javax.activation,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.specs.saaj-api-1.3/1.1.1' presentationname='Apache ServiceMix Specs :: SAAJ API 1.3' symbolicname='org.apache.servicemix.specs.saaj-api-1.3' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.saaj-api-1.3/1.1.1/org.apache.servicemix.specs.saaj-api-1.3-1.1.1.jar' version='1.1.1'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    40583
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: SAAJ API 1.3'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.saaj-api-1.3'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.soap'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.namespace,javax.activation,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.specs.saaj-api-1.3/1.0.1' presentationname='Apache ServiceMix Specs :: SAAJ API 1.3' symbolicname='org.apache.servicemix.specs.saaj-api-1.3' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.saaj-api-1.3/1.0.1/org.apache.servicemix.specs.saaj-api-1.3-1.0.1.jar' version='1.0.1'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    40367
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: SAAJ API 1.3'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.saaj-api-1.3'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.soap'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.namespace,javax.activation,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.specs.activation-api-1.1/1.2.0' presentationname='Apache ServiceMix Specs :: ACTIVATION API 1.4' symbolicname='org.apache.servicemix.specs.activation-api-1.1' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.activation-api-1.1/1.2.0/org.apache.servicemix.specs.activation-api-1.1-1.2.0.jar' version='1.2.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    45801
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: ACTIVATION API 1.4'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.activation-api-1.1'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.activation'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.activation-api-1.1/1.3.0' presentationname='Apache ServiceMix Specs :: ACTIVATION API 1.4' symbolicname='org.apache.servicemix.specs.activation-api-1.1' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.activation-api-1.1/1.3.0/org.apache.servicemix.specs.activation-api-1.1-1.3.0.jar' version='1.3.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    51446
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: ACTIVATION API 1.4'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.activation-api-1.1'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.activation'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxp-api-1.4/1.3.0' presentationname='Apache ServiceMix Specs :: JAXP API 1.4' symbolicname='org.apache.servicemix.specs.jaxp-api-1.4' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxp-api-1.4/1.3.0/org.apache.servicemix.specs.jaxp-api-1.4-1.3.0.jar' version='1.3.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    282226
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXP API 1.4'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxp-api-1.4'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.events'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.ls'/>
    <p n='uses' v='org.w3c.dom.traversal,org.w3c.dom,org.w3c.dom.events'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.namespace'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.events'/>
    <p n='uses' v='org.w3c.dom.views,org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.datatype'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.css'/>
    <p n='uses' v='org.w3c.dom.views,org.w3c.dom.stylesheets,org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.validation'/>
    <p n='uses' v='org.w3c.dom.ls,org.xml.sax,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.parsers'/>
    <p n='uses' v='org.xml.sax,javax.xml.validation,org.xml.sax.helpers,org.w3c.dom'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform.stream'/>
    <p n='uses' v='javax.xml.transform'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.util'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.transform,javax.xml.stream.util'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xml.sax'/>
    <p n='version' t='version' v='2.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.views'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.stylesheets'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.html'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.xpath'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform.dom'/>
    <p n='uses' v='org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.traversal'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.bootstrap'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform.sax'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.ext,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.xpath'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xml.sax.ext'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.ranges'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xml.sax.helpers'/>
    <p n='uses' v='org.xml.sax'/>
    <p n='version' t='version' v='2.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform.stax'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.transform,javax.xml.stream'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stax)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stax ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.css)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.css ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.html)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.html ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ranges)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ranges ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.stylesheets)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.stylesheets ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.views)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.views ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.xpath)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.xpath ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=2.0.2))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax ;version=2.0.2
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=2.0.2))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext ;version=2.0.2
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=2.0.2))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers ;version=2.0.2
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxp-api-1.4/1.2.0' presentationname='Apache ServiceMix Specs :: JAXP API 1.4' symbolicname='org.apache.servicemix.specs.jaxp-api-1.4' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxp-api-1.4/1.2.0/org.apache.servicemix.specs.jaxp-api-1.4-1.2.0.jar' version='1.2.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    282378
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXP API 1.4'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxp-api-1.4'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.events'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.ls'/>
    <p n='uses' v='org.w3c.dom.traversal,org.w3c.dom,org.w3c.dom.events'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.namespace'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.events'/>
    <p n='uses' v='org.w3c.dom.views,org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.datatype'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.css'/>
    <p n='uses' v='org.w3c.dom.views,org.w3c.dom.stylesheets,org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.validation'/>
    <p n='uses' v='org.w3c.dom.ls,org.xml.sax,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.parsers'/>
    <p n='uses' v='org.xml.sax,javax.xml.validation,org.xml.sax.helpers,org.w3c.dom'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform.stream'/>
    <p n='uses' v='javax.xml.transform'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream.util'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.stream'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.stream'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.namespace,javax.xml.transform,javax.xml.stream.util'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xml.sax'/>
    <p n='version' t='version' v='2.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.views'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.stylesheets'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.html'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.xpath'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform.dom'/>
    <p n='uses' v='org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.traversal'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.bootstrap'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform.sax'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.ext,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.xpath'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xml.sax.ext'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.ranges'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xml.sax.helpers'/>
    <p n='uses' v='org.xml.sax'/>
    <p n='version' t='version' v='2.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform.stax'/>
    <p n='uses' v='javax.xml.stream.events,javax.xml.transform,javax.xml.stream'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.events)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.events ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stax)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stax ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.css)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.css ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.html)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.html ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ranges)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ranges ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.stylesheets)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.stylesheets ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.views)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.views ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.xpath)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.xpath ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=2.0.2))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax ;version=2.0.2
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=2.0.2))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext ;version=2.0.2
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=2.0.2))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers ;version=2.0.2
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxws-api-2.0/1.1.0' presentationname='Apache ServiceMix Specs :: JAXWS API 2.0' symbolicname='org.apache.servicemix.specs.jaxws-api-2.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxws-api-2.0/1.1.0/org.apache.servicemix.specs.jaxws-api-2.0-1.1.0.jar' version='1.1.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    45924
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXWS API 2.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxws-api-2.0'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.soap'/>
    <p n='uses' v='javax.xml.soap,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.http'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.soap,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.spi'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.bind,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.ws.spi,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxws-api-2.0/1.0.0' presentationname='Apache ServiceMix Specs :: JAXWS API 2.0' symbolicname='org.apache.servicemix.specs.jaxws-api-2.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxws-api-2.0/1.0.0/org.apache.servicemix.specs.jaxws-api-2.0-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    45663
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXWS API 2.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxws-api-2.0'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.soap'/>
    <p n='uses' v='javax.xml.soap,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.http'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.soap,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.spi'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.bind,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.ws.spi,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxws-api-2.0/1.2.0' presentationname='Apache ServiceMix Specs :: JAXWS API 2.0' symbolicname='org.apache.servicemix.specs.jaxws-api-2.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxws-api-2.0/1.2.0/org.apache.servicemix.specs.jaxws-api-2.0-1.2.0.jar' version='1.2.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    47200
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXWS API 2.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxws-api-2.0'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.soap'/>
    <p n='uses' v='javax.xml.soap,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.http'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.soap,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.spi'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.bind,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.ws.spi,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxws-api-2.0/1.3.0' presentationname='Apache ServiceMix Specs :: JAXWS API 2.0' symbolicname='org.apache.servicemix.specs.jaxws-api-2.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxws-api-2.0/1.3.0/org.apache.servicemix.specs.jaxws-api-2.0-1.3.0.jar' version='1.3.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    47148
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXWS API 2.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxws-api-2.0'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.soap'/>
    <p n='uses' v='javax.xml.soap,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.http'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.soap,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.spi'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.bind,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.ws.spi,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxws-api-2.0/1.0.1' presentationname='Apache ServiceMix Specs :: JAXWS API 2.0' symbolicname='org.apache.servicemix.specs.jaxws-api-2.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxws-api-2.0/1.0.1/org.apache.servicemix.specs.jaxws-api-2.0-1.0.1.jar' version='1.0.1'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    45702
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXWS API 2.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxws-api-2.0'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.soap'/>
    <p n='uses' v='javax.xml.soap,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.http'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.soap,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.spi'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.bind,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.ws.spi,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxws-api-2.0/1.1.1' presentationname='Apache ServiceMix Specs :: JAXWS API 2.0' symbolicname='org.apache.servicemix.specs.jaxws-api-2.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxws-api-2.0/1.1.1/org.apache.servicemix.specs.jaxws-api-2.0-1.1.1.jar' version='1.1.1'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    45924
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXWS API 2.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxws-api-2.0'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.soap'/>
    <p n='uses' v='javax.xml.soap,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.http'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.soap,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.spi'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.bind,javax.xml.ws'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.ws.spi,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.javamail-api-1.4/1.2.0' presentationname='Apache ServiceMix Specs :: JAVAMAIL API 1.4' symbolicname='org.apache.servicemix.specs.javamail-api-1.4' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.javamail-api-1.4/1.2.0/org.apache.servicemix.specs.javamail-api-1.4-1.2.0.jar' version='1.2.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    209818
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAVAMAIL API 1.4'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.javamail-api-1.4'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.search'/>
    <p n='uses' v='javax.mail'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.util'/>
    <p n='uses' v='javax.mail.internet,javax.activation'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.event'/>
    <p n='uses' v='javax.mail'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.internet'/>
    <p n='uses' v='javax.activation,javax.mail,org.apache.geronimo.mail.util'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail'/>
    <p n='uses' v='javax.mail.search,javax.mail.event,javax.activation'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.mail.util'/>
    <p n='uses' v='javax.mail.internet,javax.mail'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.event)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.event ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.search)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.search ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.mail.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.mail.util
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.javamail-api-1.4/1.3.0' presentationname='Apache ServiceMix Specs :: JAVAMAIL API 1.4' symbolicname='org.apache.servicemix.specs.javamail-api-1.4' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.javamail-api-1.4/1.3.0/org.apache.servicemix.specs.javamail-api-1.4-1.3.0.jar' version='1.3.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    216781
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAVAMAIL API 1.4'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.javamail-api-1.4'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.search'/>
    <p n='uses' v='javax.mail'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.util'/>
    <p n='uses' v='javax.mail.internet,javax.activation'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.event'/>
    <p n='uses' v='javax.mail'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail.internet'/>
    <p n='uses' v='javax.activation,javax.mail,org.apache.geronimo.mail.util'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.mail'/>
    <p n='uses' v='javax.mail.search,javax.mail.event,javax.activation'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.mail.util'/>
    <p n='uses' v='javax.mail.internet,javax.mail'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.geronimo.mail.handlers'/>
    <p n='uses' v='javax.mail.internet,javax.activation,javax.mail'/>
    <p n='version' t='version' v='1.6.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.event)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.event ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.search)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.search ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.mail.handlers)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.mail.handlers ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.mail.util)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.mail.util ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxp-api-1.3/1.2.0' presentationname='Apache ServiceMix Specs :: JAXP API 1.3' symbolicname='org.apache.servicemix.specs.jaxp-api-1.3' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxp-api-1.3/1.2.0/org.apache.servicemix.specs.jaxp-api-1.3-1.2.0.jar' version='1.2.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    215973
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXP API 1.3'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxp-api-1.3'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.ls'/>
    <p n='uses' v='org.w3c.dom.traversal,org.w3c.dom,org.w3c.dom.events'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xml.sax'/>
    <p n='version' t='version' v='2.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.stylesheets'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.views'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.html'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.namespace'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.events'/>
    <p n='uses' v='org.w3c.dom.views,org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.datatype'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.xpath'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform.dom'/>
    <p n='uses' v='org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.bootstrap'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.traversal'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform.sax'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.ext,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.css'/>
    <p n='uses' v='org.w3c.dom.views,org.w3c.dom.stylesheets,org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.xpath'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xml.sax.ext'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.ranges'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.validation'/>
    <p n='uses' v='org.w3c.dom.ls,org.xml.sax,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xml.sax.helpers'/>
    <p n='uses' v='org.xml.sax'/>
    <p n='version' t='version' v='2.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.parsers'/>
    <p n='uses' v='org.xml.sax,javax.xml.validation,org.xml.sax.helpers,org.w3c.dom'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform.stream'/>
    <p n='uses' v='javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.css)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.css ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.html)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.html ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ranges)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ranges ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.stylesheets)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.stylesheets ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.views)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.views ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.xpath)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.xpath ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=2.0.2))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax ;version=2.0.2
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=2.0.2))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext ;version=2.0.2
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=2.0.2))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers ;version=2.0.2
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxp-api-1.3/1.3.0' presentationname='Apache ServiceMix Specs :: JAXP API 1.3' symbolicname='org.apache.servicemix.specs.jaxp-api-1.3' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxp-api-1.3/1.3.0/org.apache.servicemix.specs.jaxp-api-1.3-1.3.0.jar' version='1.3.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    215937
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXP API 1.3'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxp-api-1.3'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.ls'/>
    <p n='uses' v='org.w3c.dom.traversal,org.w3c.dom,org.w3c.dom.events'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xml.sax'/>
    <p n='version' t='version' v='2.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.stylesheets'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.views'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.html'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.namespace'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.events'/>
    <p n='uses' v='org.w3c.dom.views,org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.datatype'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.xpath'/>
    <p n='uses' v='org.xml.sax,javax.xml.namespace'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform.dom'/>
    <p n='uses' v='org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.bootstrap'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.traversal'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform.sax'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.ext,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.css'/>
    <p n='uses' v='org.w3c.dom.views,org.w3c.dom.stylesheets,org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.xpath'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xml.sax.ext'/>
    <p n='uses' v='org.xml.sax,org.xml.sax.helpers'/>
    <p n='version' t='version' v='2.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.w3c.dom.ranges'/>
    <p n='uses' v='org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.validation'/>
    <p n='uses' v='org.w3c.dom.ls,org.xml.sax,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.xml.sax.helpers'/>
    <p n='uses' v='org.xml.sax'/>
    <p n='version' t='version' v='2.0.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.parsers'/>
    <p n='uses' v='org.xml.sax,javax.xml.validation,org.xml.sax.helpers,org.w3c.dom'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.transform.stream'/>
    <p n='uses' v='javax.xml.transform'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.bootstrap)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.bootstrap ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.css)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.css ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.events)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.events ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.html)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.html ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ranges)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ranges ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.stylesheets)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.stylesheets ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.views)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.views ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.xpath)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.xpath ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=2.0.2))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax ;version=2.0.2
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=2.0.2))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext ;version=2.0.2
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=2.0.2))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers ;version=2.0.2
  </require>
</resource>
<resource id='org.apache.servicemix.specs.scripting-api-1.0/1.1.0' presentationname='Apache ServiceMix Specs :: Scripting API 1.0' symbolicname='org.apache.servicemix.specs.scripting-api-1.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.scripting-api-1.0/1.1.0/org.apache.servicemix.specs.scripting-api-1.0-1.1.0.jar' version='1.1.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    30655
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: Scripting API 1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.scripting-api-1.0'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.script'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.script)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.script ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.scripting-api-1.0/1.2.0' presentationname='Apache ServiceMix Specs :: Scripting API 1.0' symbolicname='org.apache.servicemix.specs.scripting-api-1.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.scripting-api-1.0/1.2.0/org.apache.servicemix.specs.scripting-api-1.0-1.2.0.jar' version='1.2.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    32139
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: Scripting API 1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.scripting-api-1.0'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.script'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.script)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.script ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.scripting-api-1.0/1.3.0' presentationname='Apache ServiceMix Specs :: Scripting API 1.0' symbolicname='org.apache.servicemix.specs.scripting-api-1.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.scripting-api-1.0/1.3.0/org.apache.servicemix.specs.scripting-api-1.0-1.3.0.jar' version='1.3.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    32075
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: Scripting API 1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.scripting-api-1.0'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.script'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.script)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.script ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.scripting-api-1.0/1.1.1' presentationname='Apache ServiceMix Specs :: Scripting API 1.0' symbolicname='org.apache.servicemix.specs.scripting-api-1.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.scripting-api-1.0/1.1.1/org.apache.servicemix.specs.scripting-api-1.0-1.1.1.jar' version='1.1.1'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    30654
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: Scripting API 1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.scripting-api-1.0'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.script'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.script)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.script ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxb-api-2.0/1.0.0' presentationname='Apache ServiceMix Specs :: JAXB API 2.0' symbolicname='org.apache.servicemix.specs.jaxb-api-2.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxb-api-2.0/1.0.0/org.apache.servicemix.specs.jaxb-api-2.0-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    82309
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXB API 2.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxb-api-2.0'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.attachment'/>
    <p n='uses' v='javax.activation'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.helpers'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,javax.xml.parsers,javax.xml.bind,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.util'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation.adapters'/>
    <p n='uses' v='javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.parsers,org.w3c.dom,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.bind.annotation.adapters,javax.xml.transform,javax.xml.validation,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.helpers)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.helpers ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxb-api-2.0/1.1.0' presentationname='Apache ServiceMix Specs :: JAXB API 2.0' symbolicname='org.apache.servicemix.specs.jaxb-api-2.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxb-api-2.0/1.1.0/org.apache.servicemix.specs.jaxb-api-2.0-1.1.0.jar' version='1.1.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    82572
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXB API 2.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxb-api-2.0'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.attachment'/>
    <p n='uses' v='javax.activation'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.helpers'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,javax.xml.parsers,javax.xml.bind,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.util'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation.adapters'/>
    <p n='uses' v='javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.parsers,org.w3c.dom,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.bind.annotation.adapters,javax.xml.transform,javax.xml.validation,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.helpers)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.helpers ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxb-api-2.0/1.3.0' presentationname='Apache ServiceMix Specs :: JAXB API 2.0' symbolicname='org.apache.servicemix.specs.jaxb-api-2.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxb-api-2.0/1.3.0/org.apache.servicemix.specs.jaxb-api-2.0-1.3.0.jar' version='1.3.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    83753
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXB API 2.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxb-api-2.0'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.attachment'/>
    <p n='uses' v='javax.activation'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.helpers'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,javax.xml.parsers,javax.xml.bind,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.util'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation.adapters'/>
    <p n='uses' v='javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.parsers,org.w3c.dom,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.bind.annotation.adapters,javax.xml.transform,javax.xml.validation,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.helpers)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.helpers ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxb-api-2.0/1.2.0' presentationname='Apache ServiceMix Specs :: JAXB API 2.0' symbolicname='org.apache.servicemix.specs.jaxb-api-2.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxb-api-2.0/1.2.0/org.apache.servicemix.specs.jaxb-api-2.0-1.2.0.jar' version='1.2.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    83840
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXB API 2.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxb-api-2.0'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.attachment'/>
    <p n='uses' v='javax.activation'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.helpers'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,javax.xml.parsers,javax.xml.bind,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.util'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation.adapters'/>
    <p n='uses' v='javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.parsers,org.w3c.dom,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.bind.annotation.adapters,javax.xml.transform,javax.xml.validation,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.helpers)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.helpers ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxb-api-2.0/1.1.1' presentationname='Apache ServiceMix Specs :: JAXB API 2.0' symbolicname='org.apache.servicemix.specs.jaxb-api-2.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxb-api-2.0/1.1.1/org.apache.servicemix.specs.jaxb-api-2.0-1.1.1.jar' version='1.1.1'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    82568
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXB API 2.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxb-api-2.0'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.attachment'/>
    <p n='uses' v='javax.activation'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.helpers'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,javax.xml.parsers,javax.xml.bind,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.util'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation.adapters'/>
    <p n='uses' v='javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.parsers,org.w3c.dom,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.bind.annotation.adapters,javax.xml.transform,javax.xml.validation,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.helpers)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.helpers ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxb-api-2.0/1.0.1' presentationname='Apache ServiceMix Specs :: JAXB API 2.0' symbolicname='org.apache.servicemix.specs.jaxb-api-2.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxb-api-2.0/1.0.1/org.apache.servicemix.specs.jaxb-api-2.0-1.0.1.jar' version='1.0.1'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    82305
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXB API 2.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxb-api-2.0'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.attachment'/>
    <p n='uses' v='javax.activation'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.helpers'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.bind.annotation.adapters,org.w3c.dom,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.validation,javax.xml.parsers,javax.xml.bind,javax.xml.transform.stream,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.util'/>
    <p n='uses' v='javax.xml.transform.sax,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation.adapters'/>
    <p n='uses' v='javax.xml.bind'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind.annotation'/>
    <p n='uses' v='javax.xml.transform.dom,javax.xml.parsers,org.w3c.dom,javax.xml.bind,javax.xml.transform'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.bind'/>
    <p n='uses' v='javax.xml.bind.attachment,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.bind.annotation.adapters,javax.xml.transform,javax.xml.validation,javax.xml.stream'/>
    <p n='version' t='version' v='2.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation.adapters)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation.adapters ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.attachment)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.attachment ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.helpers)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.helpers ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.util)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.util ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jsr311-api-1.0/1.3.0' presentationname='Apache ServiceMix Specs :: JSR311 API 1.0' symbolicname='org.apache.servicemix.specs.jsr311-api-1.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jsr311-api-1.0/1.3.0/org.apache.servicemix.specs.jsr311-api-1.0-1.3.0.jar' version='1.3.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    61688
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JSR311 API 1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jsr311-api-1.0'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.ws.rs'/>
    <p n='uses' v='javax.ws.rs.core'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.ws.rs.ext'/>
    <p n='uses' v='javax.ws.rs,javax.ws.rs.core'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.ws.rs.core'/>
    <p n='uses' v='javax.ws.rs,javax.ws.rs.ext'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.core ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.ext ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jsr311-api-1.0/1.2.0' presentationname='Apache ServiceMix Specs :: JSR311 API 1.0' symbolicname='org.apache.servicemix.specs.jsr311-api-1.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jsr311-api-1.0/1.2.0/org.apache.servicemix.specs.jsr311-api-1.0-1.2.0.jar' version='1.2.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    61741
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JSR311 API 1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jsr311-api-1.0'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.ws.rs'/>
    <p n='uses' v='javax.ws.rs.core'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.ws.rs.ext'/>
    <p n='uses' v='javax.ws.rs,javax.ws.rs.core'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.ws.rs.core'/>
    <p n='uses' v='javax.ws.rs,javax.ws.rs.ext'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.ws.rs)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.core)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.core ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ws.rs.ext)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ws.rs.ext ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jbi-api-1.0/1.1.0' presentationname='Apache ServiceMix Specs :: JBI API 1.0' symbolicname='org.apache.servicemix.specs.jbi-api-1.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jbi-api-1.0/1.1.0/org.apache.servicemix.specs.jbi-api-1.0-1.1.0.jar' version='1.1.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22605
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JBI API 1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jbi-api-1.0'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.messaging'/>
    <p n='uses' v='javax.activation,javax.xml.namespace,javax.jbi.servicedesc,javax.security.auth,javax.jbi,javax.xml.transform'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.component'/>
    <p n='uses' v='javax.jbi.messaging,javax.naming,javax.management,javax.xml.namespace,org.w3c.dom,javax.jbi.servicedesc,javax.jbi.management,javax.jbi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.servicedesc'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.management'/>
    <p n='uses' v='javax.management,javax.jbi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jbi-api-1.0/1.3.0' presentationname='Apache ServiceMix Specs :: JBI API 1.0' symbolicname='org.apache.servicemix.specs.jbi-api-1.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jbi-api-1.0/1.3.0/org.apache.servicemix.specs.jbi-api-1.0-1.3.0.jar' version='1.3.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22616
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JBI API 1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jbi-api-1.0'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.messaging'/>
    <p n='uses' v='javax.activation,javax.xml.namespace,javax.jbi.servicedesc,javax.security.auth,javax.jbi,javax.xml.transform'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.component'/>
    <p n='uses' v='javax.jbi.messaging,javax.naming,javax.management,javax.xml.namespace,org.w3c.dom,javax.jbi.servicedesc,javax.jbi.management,javax.jbi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.servicedesc'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.management'/>
    <p n='uses' v='javax.management,javax.jbi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jbi-api-1.0/1.2.0' presentationname='Apache ServiceMix Specs :: JBI API 1.0' symbolicname='org.apache.servicemix.specs.jbi-api-1.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jbi-api-1.0/1.2.0/org.apache.servicemix.specs.jbi-api-1.0-1.2.0.jar' version='1.2.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22613
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JBI API 1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jbi-api-1.0'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.messaging'/>
    <p n='uses' v='javax.activation,javax.xml.namespace,javax.jbi.servicedesc,javax.security.auth,javax.jbi,javax.xml.transform'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.component'/>
    <p n='uses' v='javax.jbi.messaging,javax.naming,javax.management,javax.xml.namespace,org.w3c.dom,javax.jbi.servicedesc,javax.jbi.management,javax.jbi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.servicedesc'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.management'/>
    <p n='uses' v='javax.management,javax.jbi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jbi-api-1.0/1.1.1' presentationname='Apache ServiceMix Specs :: JBI API 1.0' symbolicname='org.apache.servicemix.specs.jbi-api-1.0' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jbi-api-1.0/1.1.1/org.apache.servicemix.specs.jbi-api-1.0-1.1.1.jar' version='1.1.1'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22607
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JBI API 1.0'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jbi-api-1.0'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.messaging'/>
    <p n='uses' v='javax.activation,javax.xml.namespace,javax.jbi.servicedesc,javax.security.auth,javax.jbi,javax.xml.transform'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.component'/>
    <p n='uses' v='javax.jbi.messaging,javax.naming,javax.management,javax.xml.namespace,org.w3c.dom,javax.jbi.servicedesc,javax.jbi.management,javax.jbi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.servicedesc'/>
    <p n='uses' v='javax.xml.namespace,org.w3c.dom'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi.management'/>
    <p n='uses' v='javax.management,javax.jbi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jbi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxws-api-2.1/1.1.1' presentationname='Apache ServiceMix Specs :: JAXWS API 2.1' symbolicname='org.apache.servicemix.specs.jaxws-api-2.1' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxws-api-2.1/1.1.1/org.apache.servicemix.specs.jaxws-api-2.1-1.1.1.jar' version='1.1.1'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    64689
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXWS API 2.1'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxws-api-2.1'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.soap'/>
    <p n='uses' v='javax.xml.soap,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.http'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.soap,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.spi'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.transform,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.wsaddressing'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws.spi,org.w3c.dom,javax.xml.ws,javax.xml.bind,javax.xml.bind.annotation,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,org.w3c.dom,javax.xml.bind.annotation,javax.xml.transform,javax.xml.ws.spi,javax.xml.transform.stream,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxws-api-2.1/1.0.1' presentationname='Apache ServiceMix Specs :: JAXWS API 2.1' symbolicname='org.apache.servicemix.specs.jaxws-api-2.1' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxws-api-2.1/1.0.1/org.apache.servicemix.specs.jaxws-api-2.1-1.0.1.jar' version='1.0.1'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    64482
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXWS API 2.1'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxws-api-2.1'/>
    <p n='version' t='version' v='1.0.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.soap'/>
    <p n='uses' v='javax.xml.soap,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.http'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.soap,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.spi'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.transform,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.wsaddressing'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws.spi,org.w3c.dom,javax.xml.ws,javax.xml.bind,javax.xml.bind.annotation,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,org.w3c.dom,javax.xml.bind.annotation,javax.xml.transform,javax.xml.ws.spi,javax.xml.transform.stream,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxws-api-2.1/1.0.0' presentationname='Apache ServiceMix Specs :: JAXWS API 2.1' symbolicname='org.apache.servicemix.specs.jaxws-api-2.1' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxws-api-2.1/1.0.0/org.apache.servicemix.specs.jaxws-api-2.1-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    64431
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXWS API 2.1'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxws-api-2.1'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.soap'/>
    <p n='uses' v='javax.xml.soap,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.http'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.soap,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.spi'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.transform,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.wsaddressing'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws.spi,org.w3c.dom,javax.xml.ws,javax.xml.bind,javax.xml.bind.annotation,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,org.w3c.dom,javax.xml.bind.annotation,javax.xml.transform,javax.xml.ws.spi,javax.xml.transform.stream,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxws-api-2.1/1.1.0' presentationname='Apache ServiceMix Specs :: JAXWS API 2.1' symbolicname='org.apache.servicemix.specs.jaxws-api-2.1' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxws-api-2.1/1.1.0/org.apache.servicemix.specs.jaxws-api-2.1-1.1.0.jar' version='1.1.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    64694
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXWS API 2.1'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxws-api-2.1'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.soap'/>
    <p n='uses' v='javax.xml.soap,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.http'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.soap,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.spi'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.transform,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.wsaddressing'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws.spi,org.w3c.dom,javax.xml.ws,javax.xml.bind,javax.xml.bind.annotation,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,org.w3c.dom,javax.xml.bind.annotation,javax.xml.transform,javax.xml.ws.spi,javax.xml.transform.stream,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxws-api-2.1/1.3.0' presentationname='Apache ServiceMix Specs :: JAXWS API 2.1' symbolicname='org.apache.servicemix.specs.jaxws-api-2.1' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxws-api-2.1/1.3.0/org.apache.servicemix.specs.jaxws-api-2.1-1.3.0.jar' version='1.3.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    61069
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXWS API 2.1'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxws-api-2.1'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.soap'/>
    <p n='uses' v='javax.xml.soap,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.http'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.soap,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.spi'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.transform,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.wsaddressing'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws.spi,org.w3c.dom,javax.xml.ws,javax.xml.bind,javax.xml.bind.annotation,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,org.w3c.dom,javax.xml.bind.annotation,javax.xml.transform,javax.xml.ws.spi,javax.xml.transform.stream,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='org.apache.servicemix.specs.jaxws-api-2.1/1.2.0' presentationname='Apache ServiceMix Specs :: JAXWS API 2.1' symbolicname='org.apache.servicemix.specs.jaxws-api-2.1' uri='../org/apache/servicemix/specs/org.apache.servicemix.specs.jaxws-api-2.1/1.2.0/org.apache.servicemix.specs.jaxws-api-2.1-1.2.0.jar' version='1.2.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    61124
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Specs :: JAXWS API 2.1'/>
    <p n='symbolicname' v='org.apache.servicemix.specs.jaxws-api-2.1'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.soap'/>
    <p n='uses' v='javax.xml.soap,javax.xml.ws.spi,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.http'/>
    <p n='uses' v='javax.xml.ws'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.handler.soap'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.soap,javax.xml.namespace,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.spi'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,javax.xml.transform,javax.xml.ws.wsaddressing,javax.xml.ws,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws.wsaddressing'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.ws.spi,org.w3c.dom,javax.xml.ws,javax.xml.bind,javax.xml.bind.annotation,javax.xml.transform'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.xml.ws'/>
    <p n='uses' v='javax.xml.ws.handler,javax.xml.namespace,org.w3c.dom,javax.xml.bind.annotation,javax.xml.transform,javax.xml.ws.spi,javax.xml.transform.stream,javax.xml.bind'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.xml.bind)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.bind.annotation)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.bind.annotation ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.soap)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.soap ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.handler.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.handler.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.soap)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.soap ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.spi)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.spi ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws.wsaddressing)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws.wsaddressing ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='servicemix-vfs/2009.1.0' presentationname='ServiceMix :: VFS' symbolicname='servicemix-vfs' uri='../org/apache/servicemix/servicemix-vfs/2009.01/servicemix-vfs-2009.01.jar' version='2009.1.0'>
  <description>
    A Commons-VFS component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    31006
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: VFS'/>
    <p n='symbolicname' v='servicemix-vfs'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.vfs'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.executors,javax.xml.namespace,org.apache.commons.vfs,org.apache.commons.logging,javax.jbi.servicedesc,javax.jbi,org.apache.servicemix.common.locks,org.apache.servicemix.components.util,org.apache.servicemix.common.endpoints,org.apache.servicemix.common,org.apache.servicemix.common.locks.impl'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.vfs'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.vfs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.vfs
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.vfs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.vfs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks.impl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks.impl ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.components.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.components.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.vfs)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.vfs ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='servicemix-file/2008.1.0' presentationname='ServiceMix :: File' symbolicname='servicemix-file' uri='../org/apache/servicemix/servicemix-file/2008.01/servicemix-file-2008.01.jar' version='2008.1.0'>
  <description>
    A File component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    29473
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: File'/>
    <p n='symbolicname' v='servicemix-file'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.file'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.executors,javax.xml.namespace,javax.jbi.servicedesc,org.apache.commons.logging,javax.jbi.management,javax.jbi,org.apache.servicemix.common.locks,org.apache.servicemix.components.util,org.apache.servicemix.common.util,org.apache.servicemix.common.endpoints,org.apache.servicemix.common,org.apache.servicemix.common.locks.impl'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.file'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.file)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.file
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks.impl)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks.impl ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.components.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.components.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.file)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.file ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
</resource>
<resource id='servicemix-file/2009.1.0' presentationname='ServiceMix :: File' symbolicname='servicemix-file' uri='../org/apache/servicemix/servicemix-file/2009.01/servicemix-file-2009.01.jar' version='2009.1.0'>
  <description>
    A File component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    34159
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: File'/>
    <p n='symbolicname' v='servicemix-file'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.file'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.executors,javax.xml.namespace,javax.jbi.servicedesc,org.apache.commons.logging,javax.jbi.management,org.apache.servicemix.util,javax.jbi,org.apache.servicemix.common.locks,org.apache.servicemix.components.util,org.apache.servicemix.common.util,org.apache.servicemix.common.endpoints,org.apache.servicemix.common,org.apache.servicemix.common.locks.impl'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.file'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.file)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.file
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks.impl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks.impl ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.components.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.components.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.file)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.file ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.servicemix.document/1.0.0.m3' presentationname='Apache ServiceMix Document' symbolicname='org.apache.servicemix.document' uri='../org/apache/servicemix/document/org.apache.servicemix.document/1.0.0-m3/org.apache.servicemix.document-1.0.0-m3.jar' version='1.0.0.m3'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17483
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Document'/>
    <p n='symbolicname' v='org.apache.servicemix.document'/>
    <p n='version' t='version' v='1.0.0.m3'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.document.factory'/>
    <p n='uses' v='org.springframework.osgi.context,org.springframework.beans.factory.config,org.osgi.framework,org.springframework.beans,org.springframework.beans.factory,org.apache.servicemix.document'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.document'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.document)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.document
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.document.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.document.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0
  </require>
</resource>
<resource id='org.apache.servicemix.document/1.0.0' presentationname='Apache ServiceMix Document' symbolicname='org.apache.servicemix.document' uri='../org/apache/servicemix/document/org.apache.servicemix.document/1.0.0/org.apache.servicemix.document-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17540
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Document'/>
    <p n='symbolicname' v='org.apache.servicemix.document'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.document.factory'/>
    <p n='uses' v='org.springframework.osgi.context,org.springframework.beans.factory.config,org.osgi.framework,org.springframework.beans,org.springframework.beans.factory,org.apache.servicemix.document'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.document'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.document)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.document
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.document.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.document.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.2.0.m2
  </require>
</resource>
<resource id='org.apache.servicemix.document/1.0.0.m2' presentationname='Apache ServiceMix Document' symbolicname='org.apache.servicemix.document' uri='../org/apache/servicemix/document/org.apache.servicemix.document/1.0.0-m2/org.apache.servicemix.document-1.0.0-m2.jar' version='1.0.0.m2'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17481
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Document'/>
    <p n='symbolicname' v='org.apache.servicemix.document'/>
    <p n='version' t='version' v='1.0.0.m2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.document.factory'/>
    <p n='uses' v='org.springframework.osgi.context,org.springframework.beans.factory.config,org.osgi.framework,org.springframework.beans,org.springframework.beans.factory,org.apache.servicemix.document'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.document'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.document)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.document
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.document.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.document.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.url)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.url
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.1.0
  </require>
</resource>
<resource id='servicemix-shared/2008.1.0' presentationname='ServiceMix :: Shared' symbolicname='servicemix-shared' uri='../org/apache/servicemix/servicemix-shared/2008.01/servicemix-shared-2008.01.jar' version='2008.1.0'>
  <description>
    ServiceMix Shared Library
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    9085
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Shared'/>
    <p n='symbolicname' v='servicemix-shared'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
</resource>
<resource id='servicemix-shared/2009.1.0' presentationname='ServiceMix :: Shared' symbolicname='servicemix-shared' uri='../org/apache/servicemix/servicemix-shared/2009.01/servicemix-shared-2009.01.jar' version='2009.1.0'>
  <description>
    ServiceMix Shared Library
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    8588
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Shared'/>
    <p n='symbolicname' v='servicemix-shared'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
</resource>
<resource id='org.apache.servicemix.management.core/4.0.0.m1' presentationname='Apache ServiceMix Management Core' symbolicname='org.apache.servicemix.management.core' uri='../org/apache/servicemix/management/org.apache.servicemix.management.core/4.0-m1/org.apache.servicemix.management.core-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    13259
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Management Core'/>
    <p n='symbolicname' v='org.apache.servicemix.management.core'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.management'/>
    <p n='uses' v='javax.security.auth,org.springframework.beans.factory,javax.management.remote'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.management
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.management.acegi/4.0.0.m1' presentationname='Apache ServiceMix Management Acegi' symbolicname='org.apache.servicemix.management.acegi' uri='../org/apache/servicemix/management/org.apache.servicemix.management.acegi/4.0-m1/org.apache.servicemix.management.acegi-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12033
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Management Acegi'/>
    <p n='symbolicname' v='org.apache.servicemix.management.acegi'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.management.acegi'/>
    <p n='uses' v='org.acegisecurity.providers,org.acegisecurity,javax.security.auth,javax.management.remote'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management.remote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.remote
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.acegisecurity)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.acegisecurity
  </require>
  <require extend='false' filter='(&amp;(package=org.acegisecurity.providers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.acegisecurity.providers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.management.acegi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.management.acegi
  </require>
</resource>
<resource id='servicemix-saxon/2008.1.0' presentationname='ServiceMix :: Saxon Service Engine' symbolicname='servicemix-saxon' uri='../org/apache/servicemix/servicemix-saxon/2008.01/servicemix-saxon-2008.01.jar' version='2008.1.0'>
  <description>
    An XSLT 2.0 / XQuery Service Engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    36786
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Saxon Service Engine'/>
    <p n='symbolicname' v='servicemix-saxon'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.saxon.packaging'/>
    <p n='uses' v='org.apache.servicemix.saxon,org.apache.servicemix.common,org.apache.servicemix.common.xbean'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.saxon'/>
    <p n='uses' v='javax.xml.namespace,net.sf.saxon.query,net.sf.saxon.om,javax.jbi.management,org.apache.servicemix.expression,javax.xml.transform,org.springframework.core.io,javax.xml.parsers,org.apache.servicemix.common,org.apache.servicemix.store.memory,javax.xml.transform.stream,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.jbi.component,javax.activation,org.w3c.dom,javax.jbi.servicedesc,org.apache.servicemix.store,javax.xml.transform.dom,org.apache.servicemix.common.util,org.apache.servicemix.saxon.support,org.apache.servicemix.common.endpoints,net.sf.saxon,javax.security.auth'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.saxon.support'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.common.util,javax.jbi.component,javax.xml.namespace,javax.jbi.servicedesc,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.saxon'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.saxon)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.saxon
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.om)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.om
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.query
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.xbean)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.xbean ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.saxon)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.saxon ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.saxon.packaging)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.saxon.packaging ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.saxon.support)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.saxon.support ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store.memory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store.memory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='servicemix-saxon/2009.1.0' presentationname='ServiceMix :: Saxon Service Engine' symbolicname='servicemix-saxon' uri='../org/apache/servicemix/servicemix-saxon/2009.01/servicemix-saxon-2009.01.jar' version='2009.1.0'>
  <description>
    An XSLT 2.0 / XQuery Service Engine
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    37210
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Saxon Service Engine'/>
    <p n='symbolicname' v='servicemix-saxon'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.saxon.packaging'/>
    <p n='uses' v='org.apache.servicemix.saxon,org.apache.servicemix.common,org.apache.servicemix.common.xbean'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.saxon'/>
    <p n='uses' v='javax.xml.namespace,net.sf.saxon.query,net.sf.saxon.om,javax.jbi.management,org.apache.servicemix.expression,javax.xml.transform,net.sf.saxon.trans,org.springframework.core.io,javax.xml.parsers,org.apache.servicemix.common,org.apache.servicemix.store.memory,javax.xml.transform.stream,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.jbi.component,javax.activation,org.w3c.dom,javax.jbi.servicedesc,org.apache.servicemix.store,javax.xml.transform.dom,org.apache.servicemix.common.util,org.apache.servicemix.saxon.support,org.apache.servicemix.common.endpoints,net.sf.saxon,javax.security.auth'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.saxon.support'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.common.util,javax.jbi.component,javax.xml.namespace,javax.jbi.servicedesc,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.saxon'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.saxon)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.saxon
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.om)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.om
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.query
  </require>
  <require extend='false' filter='(&amp;(package=net.sf.saxon.trans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package net.sf.saxon.trans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.xbean)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.xbean ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.saxon)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.saxon ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.saxon.packaging)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.saxon.packaging ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.saxon.support)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.saxon.support ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store.memory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store.memory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='org.apache.servicemix.features.branding/4.0.0' presentationname='Apache ServiceMix Branding Support' symbolicname='org.apache.servicemix.features.branding' uri='../org/apache/servicemix/features/org.apache.servicemix.features.branding/4.0.0/org.apache.servicemix.features.branding-4.0.0.jar' version='4.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    9066
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Branding Support'/>
    <p n='symbolicname' v='org.apache.servicemix.features.branding'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.kernel.version'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.version)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.version
  </require>
</resource>
<resource id='org.apache.servicemix.camel.component/4.0.0.m1' presentationname='Apache ServiceMix Camel Component' symbolicname='org.apache.servicemix.camel.component' uri='../org/apache/servicemix/camel/org.apache.servicemix.camel.component/4.0-m1/org.apache.servicemix.camel.component-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22931
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Camel Component'/>
    <p n='symbolicname' v='org.apache.servicemix.camel.component'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.camel'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.service,org.apache.camel,org.apache.camel.spi,org.apache.servicemix.nmr.api,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.camel)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.camel
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
</resource>
<resource id='org.apache.servicemix.camel.component/4.0.0' presentationname='Apache ServiceMix Camel Component' symbolicname='org.apache.servicemix.camel.component' uri='../org/apache/servicemix/camel/org.apache.servicemix.camel.component/4.0.0/org.apache.servicemix.camel.component-4.0.0.jar' version='4.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    24531
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Camel Component'/>
    <p n='symbolicname' v='org.apache.servicemix.camel.component'/>
    <p n='version' t='version' v='4.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.camel.nmr'/>
    <p n='uses' v='org.apache.servicemix.nmr.api.service,org.apache.camel,org.apache.camel.spi,org.apache.servicemix.nmr.api,org.apache.camel.util,org.apache.camel.impl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.camel)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.impl)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.impl ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.spi)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.spi ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.camel.util)(version&gt;=1.6.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.camel.util ;version=1.6.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.camel.nmr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.camel.nmr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.service)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.service
  </require>
</resource>
<resource id='org.apache.servicemix.transaction/1.0.0' presentationname='Apache ServiceMix Transaction' symbolicname='org.apache.servicemix.transaction' uri='../org/apache/servicemix/transaction/org.apache.servicemix.transaction/1.0.0/org.apache.servicemix.transaction-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17648
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Transaction'/>
    <p n='symbolicname' v='org.apache.servicemix.transaction'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.transaction'/>
    <p n='uses' v='org.apache.geronimo.transaction.manager,org.springframework.transaction.jta,javax.transaction.xa,org.apache.geronimo.transaction.log,org.springframework.transaction,javax.transaction,org.springframework.beans.factory,org.springframework.transaction.support'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.log)(version&gt;=2.2.0.r634076))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.transaction.log ;version=2.2.0.r634076
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.geronimo.transaction.manager)(version&gt;=2.2.0.r634076))' multiple='false' name='package' optional='false'>
    Import package org.apache.geronimo.transaction.manager ;version=2.2.0.r634076
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.transaction
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.jta)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.jta ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.transaction.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.transaction.support ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.servicemix.transaction/4.0.0.m1' presentationname='Apache ServiceMix Features :: Transaction' symbolicname='org.apache.servicemix.transaction' uri='../org/apache/servicemix/transaction/org.apache.servicemix.transaction/4.0-m1/org.apache.servicemix.transaction-4.0-m1.jar' version='4.0.0.m1'>
  <description>
    The Apache Software Foundation provides support for the Apache
    
    
    
    
    
    
    
    
    
    
    
     community
    
     of
     open-source
    
     software
    
     projects.
    
    
    
 
           The
     Apache
    
    
    
   
      projects
    
    
 
        are characterized
     by
 
       
  
       a
     collaborative,
    
    
     consensus
    
    
     based
 
       
  
       development
    
    
    
     process,
     an open
     and
    
    
  
        
    
      pragmatic software
    
 
        license,
 
      
     
    
   
     
     and
     a desire
     to create
   
      high quality
    

     
        software

        
  
 
      
        that leads the
   

          way in its
    
 
       
     field.
    
        We consider
    
   
     

 
            ourselves
     not
     simply
     a group
    
 
    
 

       
            of projects
     sharing
  
      
    
  
    
       a server, but
    
     rather a
     community
    
 
     
    
       of
 
        developers
    

       
         and users.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    9844
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Features :: Transaction'/>
    <p n='symbolicname' v='org.apache.servicemix.transaction'/>
    <p n='version' t='version' v='4.0.0.m1'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jencks.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jencks.factory
  </require>
</resource>
<resource id='servicemix-truezip/2009.1.0' presentationname='ServiceMix :: TrueZIP' symbolicname='servicemix-truezip' uri='../org/apache/servicemix/servicemix-truezip/2009.01/servicemix-truezip-2009.01.jar' version='2009.1.0'>
  <description>
    A File TrueZIP component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    25756
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: TrueZIP'/>
    <p n='symbolicname' v='servicemix-truezip'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.truezip'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.truezip'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.executors,javax.xml.namespace,org.apache.servicemix.id,javax.jbi.servicedesc,org.apache.commons.logging,javax.jbi.management,org.apache.servicemix.common.locks,org.apache.servicemix.components.util,org.apache.servicemix.common.util,org.apache.servicemix.common.endpoints,org.apache.servicemix.common,org.apache.servicemix.common.locks.impl,de.schlichtherle.io'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.truezip)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.truezip
  </require>
  <require extend='false' filter='(&amp;(package=de.schlichtherle.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package de.schlichtherle.io
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks.impl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks.impl ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.components.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.components.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.id)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.id
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.truezip)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.truezip ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='servicemix-truezip/2008.1.0' presentationname='ServiceMix :: TrueZIP' symbolicname='servicemix-truezip' uri='../org/apache/servicemix/servicemix-truezip/2008.01/servicemix-truezip-2008.01.jar' version='2008.1.0'>
  <description>
    A File TrueZIP component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26003
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: TrueZIP'/>
    <p n='symbolicname' v='servicemix-truezip'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.truezip'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.truezip'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.executors,javax.xml.namespace,org.apache.servicemix.id,javax.jbi.servicedesc,org.apache.commons.logging,javax.jbi.management,org.apache.servicemix.common.locks,org.apache.servicemix.components.util,org.apache.servicemix.common.util,org.apache.servicemix.common.endpoints,org.apache.servicemix.common,org.apache.servicemix.common.locks.impl,de.schlichtherle.io'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.truezip)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.truezip
  </require>
  <require extend='false' filter='(&amp;(package=de.schlichtherle.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package de.schlichtherle.io
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks.impl)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks.impl ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.components.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.components.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.id)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.id
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.truezip)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.truezip ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
</resource>
<resource id='servicemix-common/2008.1.0' presentationname='ServiceMix :: Common' symbolicname='servicemix-common' uri='../org/apache/servicemix/servicemix-common/2008.01/servicemix-common-2008.01.jar' version='2008.1.0'>
  <description>
    Common library for binding component and service engines
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    151620
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Common'/>
    <p n='symbolicname' v='servicemix-common'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.tools.wsdl'/>
    <p n='uses' v='javax.wsdl,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,javax.wsdl.extensions,javax.wsdl.factory,javax.xml.parsers,javax.wsdl.extensions.schema,com.ibm.wsdl.extensions.schema'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.security'/>
    <p n='uses' v='javax.security.auth,javax.net.ssl'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.util'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.transform,javax.xml.parsers,javax.xml.transform.stream,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.mail.util,org.xml.sax,javax.jbi.component,javax.activation,org.w3c.dom,org.apache.commons.logging,javax.jbi.servicedesc,javax.jbi,javax.xml.transform.dom,javax.xml.transform.sax,javax.security.auth'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common'/>
    <p n='uses' v='org.apache.servicemix.executors.impl,javax.resource.spi.work,javax.xml.namespace,javax.jbi.management,org.apache.servicemix,javax.naming,javax.xml.parsers,javax.transaction,javax.jbi.messaging,org.apache.servicemix.executors,javax.jbi.component,javax.management,org.w3c.dom,javax.jbi.servicedesc,org.apache.commons.logging,javax.jbi,org.apache.servicemix.common.util,org.apache.servicemix.common.xbean'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.endpoints'/>
    <p n='uses' v='javax.wsdl,javax.jbi.messaging,org.apache.servicemix.executors,javax.jbi.component,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,javax.jbi.servicedesc,javax.jbi.management,org.apache.servicemix.common.scheduler,org.apache.servicemix.common.util,org.apache.servicemix.common'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.packaging'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.xbean'/>
    <p n='uses' v='javax.jbi.messaging,javax.jbi.component,javax.xml.namespace,org.apache.xbean.classloader,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,javax.jbi.management,org.springframework.context.support,javax.jbi,org.springframework.beans.factory.config,org.apache.servicemix.common.util,org.springframework.beans.factory.xml,org.springframework.core.io,javax.xml.parsers,org.apache.servicemix.common,org.apache.servicemix.common.packaging,org.springframework.beans,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.locks.impl'/>
    <p n='uses' v='org.apache.servicemix.common.locks'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.wsdl1'/>
    <p n='uses' v='javax.wsdl,javax.jbi.messaging,javax.wsdl.xml,javax.xml.namespace,org.w3c.dom,javax.jbi.management,com.ibm.wsdl.util.xml,javax.wsdl.extensions,javax.wsdl.factory,javax.xml.parsers,org.apache.servicemix.common.endpoints,org.apache.servicemix.common'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.osgi'/>
    <p n='uses' v='org.springframework.osgi.context,org.apache.servicemix.jbi.deployer,org.apache.servicemix.common,org.osgi.framework,org.apache.commons.logging,javax.jbi.management,org.springframework.context,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.locks'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.scheduler'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.work)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi.work
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks.impl)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks.impl ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.packaging)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.packaging ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.scheduler)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.scheduler ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.security)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.security ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.tools.wsdl)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.tools.wsdl ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.wsdl1)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.wsdl1 ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.xbean)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.xbean ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.deployer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classloader)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classloader ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='servicemix-common/2009.1.0' presentationname='ServiceMix :: Common' symbolicname='servicemix-common' uri='../org/apache/servicemix/servicemix-common/2009.01/servicemix-common-2009.01.jar' version='2009.1.0'>
  <description>
    Common library for binding component and service engines
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    159592
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Common'/>
    <p n='symbolicname' v='servicemix-common'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.tools.wsdl'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions.soap,org.xml.sax,com.ibm.wsdl.extensions.soap,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,javax.wsdl.extensions.soap12,javax.wsdl.extensions,javax.wsdl.factory,javax.xml.parsers,javax.wsdl.extensions.schema,com.ibm.wsdl.extensions.soap12,com.ibm.wsdl.extensions.schema'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.security'/>
    <p n='uses' v='javax.security.auth,javax.net.ssl'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.util'/>
    <p n='uses' v='javax.xml.namespace,javax.xml.transform,javax.xml.parsers,javax.xml.transform.stream,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.mail.util,org.xml.sax,javax.jbi.component,javax.activation,org.w3c.dom,org.apache.commons.logging,javax.jbi.servicedesc,javax.jbi,javax.xml.transform.dom,javax.xml.transform.sax,javax.security.auth'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common'/>
    <p n='uses' v='org.apache.servicemix.executors.impl,javax.resource.spi.work,javax.xml.namespace,javax.jbi.management,org.apache.servicemix,javax.naming,javax.xml.parsers,javax.transaction,javax.jbi.messaging,org.apache.servicemix.executors,javax.management,javax.jbi.component,org.w3c.dom,javax.jbi.servicedesc,org.apache.commons.logging,javax.jbi,org.apache.servicemix.common.util,org.apache.servicemix.common.xbean'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.endpoints'/>
    <p n='uses' v='javax.wsdl,javax.jbi.messaging,org.apache.servicemix.executors,javax.jbi.component,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,javax.jbi.servicedesc,javax.jbi.management,org.apache.servicemix.common.scheduler,org.apache.servicemix.common.util,org.apache.servicemix.common'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.packaging'/>
    <p n='uses' v='javax.xml.namespace'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.xbean'/>
    <p n='uses' v='javax.jbi.messaging,javax.jbi.component,javax.xml.namespace,org.apache.xbean.classloader,org.w3c.dom,org.apache.commons.logging,org.apache.xbean.spring.context,javax.jbi.management,org.springframework.context.support,javax.jbi,org.springframework.beans.factory.config,org.apache.servicemix.common.util,org.springframework.beans.factory.xml,org.springframework.core.io,javax.xml.parsers,org.apache.servicemix.common,org.apache.servicemix.common.packaging,org.springframework.beans,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.locks.impl'/>
    <p n='uses' v='org.apache.servicemix.common.locks'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.wsdl1'/>
    <p n='uses' v='javax.wsdl,javax.jbi.messaging,javax.wsdl.xml,javax.xml.namespace,org.w3c.dom,javax.jbi.management,com.ibm.wsdl.util.xml,javax.wsdl.extensions,javax.wsdl.factory,javax.xml.parsers,org.apache.servicemix.common.endpoints,org.apache.servicemix.common'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.osgi'/>
    <p n='uses' v='org.springframework.osgi.context,org.apache.servicemix.jbi.deployer,javax.jbi.component,org.osgi.framework,org.apache.servicemix.common,org.apache.commons.logging,javax.jbi.management,org.springframework.context,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.locks'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.common.scheduler'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.util.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.ibm.wsdl.util.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.work)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi.work
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.locks.impl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.locks.impl ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.packaging)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.packaging ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.scheduler)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.scheduler ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.security)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.security ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.tools.wsdl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.tools.wsdl ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.wsdl1)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.wsdl1 ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.xbean)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.xbean ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.deployer)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.deployer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.classloader)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.classloader ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.config)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.config ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context.support)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context.support ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='servicemix-mail/2009.1.0' presentationname='ServiceMix :: Mail' symbolicname='servicemix-mail' uri='../org/apache/servicemix/servicemix-mail/2009.01/servicemix-mail-2009.01.jar' version='2009.1.0'>
  <description>
    A Mail component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    50142
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Mail'/>
    <p n='symbolicname' v='servicemix-mail'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.mail.marshaler'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.mail.util,javax.activation,org.w3c.dom,org.apache.commons.logging,javax.xml.transform,org.apache.servicemix.components.util,javax.mail.internet,javax.mail'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.mail.security'/>
    <p n='uses' v='javax.net,org.apache.commons.logging,javax.net.ssl'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.mail'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.mail'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.xml.namespace,org.apache.commons.logging,javax.jbi.management,org.apache.servicemix.store,javax.jbi,javax.xml.transform,javax.mail.search,org.apache.servicemix.mail.marshaler,javax.mail.internet,org.apache.servicemix.common.endpoints,org.apache.servicemix.common,org.apache.servicemix.mail.utils,javax.mail'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.mail.utils'/>
    <p n='uses' v='javax.mail.internet,javax.mail'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.search)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.search
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.components.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.components.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.mail)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.mail ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.mail.marshaler)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.mail.marshaler ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.mail.security)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.mail.security ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.mail.utils)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.mail.utils ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='servicemix-mail/2008.1.0' presentationname='ServiceMix :: Mail' symbolicname='servicemix-mail' uri='../org/apache/servicemix/servicemix-mail/2008.01/servicemix-mail-2008.01.jar' version='2008.1.0'>
  <description>
    A Mail component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    42280
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Mail'/>
    <p n='symbolicname' v='servicemix-mail'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.mail.marshaler'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.mail.util,javax.activation,org.w3c.dom,org.apache.commons.logging,javax.xml.transform,org.apache.servicemix.components.util,javax.mail.internet,javax.mail'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.mail.security'/>
    <p n='uses' v='javax.net,org.apache.commons.logging,javax.net.ssl'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.mail'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.mail'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.xml.namespace,org.apache.commons.logging,javax.jbi.management,javax.jbi,javax.xml.transform,org.apache.servicemix.mail.marshaler,javax.mail.search,javax.mail.internet,org.apache.servicemix.common,org.apache.servicemix.common.endpoints,org.apache.servicemix.mail.utils,javax.mail'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.mail.utils'/>
    <p n='uses' v='javax.mail.internet,javax.mail'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.search)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.search
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.components.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.components.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.mail)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.mail ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.mail.marshaler)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.mail.marshaler ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.mail.security)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.mail.security ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.mail.utils)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.mail.utils ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='servicemix-drools/2008.1.0' presentationname='ServiceMix :: Drools Service Engine' symbolicname='servicemix-drools' uri='../org/apache/servicemix/servicemix-drools/2008.01/servicemix-drools-2008.01.jar' version='2008.1.0'>
  <description>
    A Rules Service Engine based on Drools
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    32424
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Drools Service Engine'/>
    <p n='symbolicname' v='servicemix-drools'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.drools'/>
    <p n='uses' v='javax.jbi.messaging,javax.xml.namespace,javax.jbi.servicedesc,org.apache.commons.logging,javax.jbi.management,org.apache.servicemix.drools.model,javax.jbi,org.drools.compiler,org.drools.event,org.apache.servicemix.common.util,org.springframework.core.io,org.drools,org.apache.servicemix.common.endpoints,org.apache.servicemix.common'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.drools.support'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.drools'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.drools.model'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.jbi.component,javax.xml.namespace,org.apache.servicemix.drools,org.w3c.dom,org.apache.commons.logging,org.apache.servicemix.expression,javax.xml.transform,javax.xml.transform.dom,org.apache.servicemix.common.util,org.drools,org.drools.rule,org.apache.servicemix.common'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.drools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.drools
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.drools)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.drools ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.drools.model)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.drools.model ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.drools.support)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.drools.support ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.drools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.drools
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.compiler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.drools.compiler
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.drools.event
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.rule)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.drools.rule
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
</resource>
<resource id='servicemix-drools/2009.1.0' presentationname='ServiceMix :: Drools Service Engine' symbolicname='servicemix-drools' uri='../org/apache/servicemix/servicemix-drools/2009.01/servicemix-drools-2009.01.jar' version='2009.1.0'>
  <description>
    A Rules Service Engine based on Drools
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    33516
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: Drools Service Engine'/>
    <p n='symbolicname' v='servicemix-drools'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.drools'/>
    <p n='uses' v='javax.jbi.messaging,javax.xml.namespace,javax.jbi.servicedesc,org.apache.commons.logging,javax.jbi.management,javax.jbi,org.apache.servicemix.drools.model,javax.xml.transform,org.drools.compiler,org.drools.event,org.apache.servicemix.common.util,org.springframework.core.io,org.drools,org.apache.servicemix.common.endpoints,org.apache.servicemix.common'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.drools.support'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.drools'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.drools.model'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.jbi.component,javax.xml.namespace,org.apache.servicemix.drools,org.w3c.dom,org.apache.commons.logging,javax.xml.xpath,org.apache.servicemix.expression,javax.xml.transform,javax.xml.transform.dom,org.apache.servicemix.common.util,org.drools,org.drools.rule,org.apache.servicemix.common'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.drools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.drools
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.drools)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.drools ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.drools.model)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.drools.model ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.drools.support)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.drools.support ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.drools)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.drools
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.compiler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.drools.compiler
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.drools.event
  </require>
  <require extend='false' filter='(&amp;(package=org.drools.rule)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.drools.rule
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='servicemix-snmp/2008.1.0' presentationname='ServiceMix :: SNMP' symbolicname='servicemix-snmp' uri='../org/apache/servicemix/servicemix-snmp/2008.01/servicemix-snmp-2008.01.jar' version='2008.1.0'>
  <description>
    A SNMP component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26467
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: SNMP'/>
    <p n='symbolicname' v='servicemix-snmp'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.snmp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.snmp.util'/>
    <p n='uses' v='org.springframework.core.io,org.snmp4j.smi'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.snmp.marshaler'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.snmp4j.smi,org.snmp4j,javax.xml.transform'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.snmp'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.snmp.util,org.snmp4j.mp,org.apache.commons.logging,javax.jbi.management,org.apache.servicemix.snmp.marshaler,org.snmp4j.event,org.snmp4j.transport,org.apache.servicemix.common,org.apache.servicemix.common.endpoints,org.snmp4j.smi,org.snmp4j,org.snmp4j.security'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.snmp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.snmp
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.snmp)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.snmp ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.snmp.marshaler)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.snmp.marshaler ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.snmp.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.snmp.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.snmp4j
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.snmp4j.event
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.mp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.snmp4j.mp
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.snmp4j.security
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.smi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.snmp4j.smi
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.snmp4j.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
</resource>
<resource id='servicemix-snmp/2009.1.0' presentationname='ServiceMix :: SNMP' symbolicname='servicemix-snmp' uri='../org/apache/servicemix/servicemix-snmp/2009.01/servicemix-snmp-2009.01.jar' version='2009.1.0'>
  <description>
    A SNMP component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28441
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: SNMP'/>
    <p n='symbolicname' v='servicemix-snmp'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.snmp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.snmp.util'/>
    <p n='uses' v='org.springframework.core.io,org.snmp4j.smi'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.snmp.marshaler'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.snmp4j.smi,org.snmp4j,javax.xml.transform'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.snmp'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.snmp.util,org.snmp4j.mp,org.apache.commons.logging,javax.jbi.management,org.apache.servicemix.snmp.marshaler,org.snmp4j.event,org.snmp4j.transport,org.apache.servicemix.common,org.apache.servicemix.common.endpoints,org.snmp4j.smi,org.snmp4j,org.snmp4j.security'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.snmp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.snmp
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.snmp)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.snmp ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.snmp.marshaler)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.snmp.marshaler ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.snmp.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.snmp.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.snmp4j
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.snmp4j.event
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.mp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.snmp4j.mp
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.snmp4j.security
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.smi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.snmp4j.smi
  </require>
  <require extend='false' filter='(&amp;(package=org.snmp4j.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.snmp4j.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='servicemix-utils/1.0.0' presentationname='Apache ServiceMix :: Utils' symbolicname='servicemix-utils' uri='../org/apache/servicemix/servicemix-utils/1.0.0/servicemix-utils-1.0.0.jar' version='1.0.0'>
  <description>
    Various utility/helper classes and services for the ServiceMix
    
    
    
    
    
    
    
    
    
    
    
     containers
    
     and
     components
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    186185
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix :: Utils'/>
    <p n='symbolicname' v='servicemix-utils'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.locks'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.executors.impl'/>
    <p n='uses' v='org.apache.servicemix.executors'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.helper'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.xml.sax,org.apache.servicemix.jbi.marshaler,javax.activation,org.apache.servicemix.util,javax.xml.transform,javax.xml.transform.sax,org.apache.servicemix.jbi.api,javax.xml.parsers,org.apache.servicemix.util.jaf,javax.xml.transform.stream,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.transformer'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.xml.sax,javax.activation,org.apache.servicemix.jbi.helper,javax.xml.transform,javax.xml.transform.sax,javax.xml.parsers,javax.xml.transform.stream,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.expression'/>
    <p n='uses' v='com.thoughtworks.xstream.io,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.apache.xmlbeans,org.xml.sax,javax.xml.namespace,org.w3c.dom,org.apache.commons.logging,javax.xml.xpath,javax.xml.transform,org.jaxen.dom,org.apache.commons.logging.impl,javax.xml.transform.sax,com.thoughtworks.xstream.io.xml,org.jaxen,com.thoughtworks.xstream,javax.xml.parsers,javax.xml.transform.stream,org.springframework.beans.factory'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.components.util'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.activation,org.apache.commons.logging,org.apache.servicemix.expression,javax.jbi,javax.xml.transform,javax.xml.transform.stream'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.tck.mock'/>
    <p n='uses' v='javax.jbi.messaging,javax.activation,javax.xml.namespace,javax.jbi.servicedesc,javax.security.auth,javax.xml.transform'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.api'/>
    <p n='uses' v='javax.jbi.messaging,javax.jbi.component,javax.xml.namespace,org.apache.servicemix.jbi.marshaler,javax.jbi.servicedesc,javax.jbi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.store.memory'/>
    <p n='uses' v='org.apache.servicemix.id,org.apache.commons.logging,org.apache.servicemix.store'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.listener'/>
    <p n='uses' v='javax.jbi.messaging'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jdbc.adapter'/>
    <p n='uses' v='org.apache.servicemix.jdbc,org.apache.commons.logging'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.store.jdbc'/>
    <p n='uses' v='org.apache.servicemix.jdbc,org.apache.servicemix.id,org.apache.commons.logging,org.apache.servicemix.store,javax.sql'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.locks.impl'/>
    <p n='uses' v='org.apache.servicemix.locks'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.jaxp'/>
    <p n='uses' v='javax.jbi.messaging,org.xml.sax,javax.xml.namespace,org.w3c.dom,javax.xml.xpath,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,org.springframework.core.io,org.xml.sax.ext,org.xml.sax.helpers,javax.xml.parsers,javax.xml.transform.stream,javax.xml.stream,javax.xml.stream.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.timers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.executors'/>
    <p n='uses' v='javax.resource.spi.work'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.finder'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.marshaler'/>
    <p n='uses' v='javax.xml.transform.dom,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.w3c.dom,javax.xml.transform'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.id'/>
    <p n='uses' v='org.apache.commons.logging'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.store'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jdbc'/>
    <p n='uses' v='org.apache.servicemix.finder,org.apache.commons.logging,org.apache.servicemix.jdbc.adapter'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.util.jaf'/>
    <p n='uses' v='javax.activation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.timers.impl'/>
    <p n='uses' v='org.apache.servicemix.timers,org.apache.commons.logging'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.exception'/>
    <p n='uses' v='javax.jbi.messaging'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.work)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi.work
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.components.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.components.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.finder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.finder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.id)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.id
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.exception)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.exception
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.helper)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.helper
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.marshaler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.marshaler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.transformer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.transformer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jdbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jdbc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jdbc.adapter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jdbc.adapter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.locks)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.locks
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.locks.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.locks.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store.jdbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store.jdbc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store.memory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store.memory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.tck.mock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.tck.mock
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.timers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.timers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.timers.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.timers.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.util.jaf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.util.jaf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='servicemix-utils/1.1.0' presentationname='Apache ServiceMix :: Utils' symbolicname='servicemix-utils' uri='../org/apache/servicemix/servicemix-utils/1.1.0/servicemix-utils-1.1.0.jar' version='1.1.0'>
  <description>
    Various utility/helper classes and services for the ServiceMix
    
    
    
    
    
    
    
    
    
    
    
     containers
    
     and
     components
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    187336
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix :: Utils'/>
    <p n='symbolicname' v='servicemix-utils'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.id'/>
    <p n='uses' v='org.apache.commons.logging'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.listener'/>
    <p n='uses' v='javax.jbi.messaging'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.executors.impl'/>
    <p n='uses' v='org.apache.servicemix.executors'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jdbc'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.servicemix.jdbc.adapter,org.apache.servicemix.finder'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.timers.impl'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.servicemix.timers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.locks'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.marshaler'/>
    <p n='uses' v='javax.xml.transform,org.apache.servicemix.jbi.jaxp,javax.xml.transform.dom,javax.jbi.messaging,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.locks.impl'/>
    <p n='uses' v='org.apache.servicemix.locks'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.jaxp'/>
    <p n='uses' v='org.springframework.core.io,javax.xml.parsers,javax.xml.transform.dom,org.w3c.dom,org.xml.sax,javax.xml.namespace,javax.xml.xpath,javax.xml.stream,javax.xml.stream.util,org.xml.sax.ext,javax.xml.transform,javax.xml.transform.stream,javax.xml.transform.sax,javax.jbi.messaging,org.xml.sax.helpers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.executors'/>
    <p n='uses' v='javax.resource.spi.work'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.timers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.store.jdbc'/>
    <p n='uses' v='org.apache.servicemix.id,org.apache.commons.logging,javax.sql,org.apache.servicemix.jdbc,org.apache.servicemix.store'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.tck.mock'/>
    <p n='uses' v='javax.activation,javax.xml.transform,javax.jbi.servicedesc,javax.security.auth,javax.jbi.messaging,javax.xml.namespace'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.store.memory'/>
    <p n='uses' v='org.apache.servicemix.id,org.apache.commons.logging,org.apache.servicemix.store'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.transformer'/>
    <p n='uses' v='javax.xml.parsers,javax.security.auth,org.xml.sax,org.apache.servicemix.jbi.helper,javax.activation,javax.xml.transform,javax.xml.transform.stream,org.apache.servicemix.jbi.jaxp,javax.xml.transform.sax,javax.jbi.messaging'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.store'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.components.util'/>
    <p n='uses' v='org.apache.commons.logging,javax.jbi,javax.activation,javax.xml.transform,javax.xml.transform.stream,org.apache.servicemix.jbi.jaxp,org.apache.servicemix.expression,javax.jbi.messaging'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.exception'/>
    <p n='uses' v='javax.jbi.messaging'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.helper'/>
    <p n='uses' v='javax.xml.parsers,javax.security.auth,org.xml.sax,javax.activation,org.apache.servicemix.jbi.marshaler,org.apache.servicemix.jbi.api,javax.xml.transform,org.apache.servicemix.util,javax.xml.transform.stream,org.apache.servicemix.jbi.jaxp,javax.xml.transform.sax,javax.jbi.messaging,org.apache.servicemix.util.jaf'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jdbc.adapter'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.servicemix.jdbc'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.jbi.api'/>
    <p n='uses' v='org.apache.servicemix.jbi.marshaler,javax.jbi,javax.jbi.servicedesc,javax.jbi.component,javax.jbi.messaging,javax.xml.namespace'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.expression'/>
    <p n='uses' v='org.apache.commons.logging,org.apache.xmlbeans,com.thoughtworks.xstream,javax.xml.parsers,org.w3c.dom,javax.xml.namespace,org.xml.sax,javax.xml.xpath,com.thoughtworks.xstream.io,com.thoughtworks.xstream.io.xml,org.jaxen,javax.xml.transform,javax.xml.transform.stream,org.jaxen.dom,org.apache.servicemix.jbi.jaxp,javax.xml.transform.sax,javax.jbi.messaging,org.springframework.beans.factory'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.finder'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.util.jaf'/>
    <p n='uses' v='javax.activation'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=1.1.0))' multiple='false' name='package' optional='true'>
    Import package javax.activation ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.resource.spi.work)(version&gt;=1.5.0))' multiple='false' name='package' optional='true'>
    Import package javax.resource.spi.work ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.stream.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.xpath)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.xpath
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.components.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.components.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.finder)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.finder
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.id)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.id
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.exception)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.exception
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.helper)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.helper
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.listener)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.listener
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.marshaler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.marshaler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.transformer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.transformer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jdbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jdbc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jdbc.adapter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jdbc.adapter
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.locks)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.locks
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.locks.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.locks.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store.jdbc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store.jdbc
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.store.memory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.store.memory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.tck.mock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.tck.mock
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.timers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.timers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.timers.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.timers.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.util.jaf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.util.jaf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xmlbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xmlbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen
  </require>
  <require extend='false' filter='(&amp;(package=org.jaxen.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.jaxen.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='servicemix-scripting/2008.1.0' presentationname='ServiceMix :: JSR-223 Scripting Service Engine' symbolicname='servicemix-scripting' uri='../org/apache/servicemix/servicemix-scripting/2008.01/servicemix-scripting-2008.01.jar' version='2008.1.0'>
  <description>
    This pom provides the common bits for all ServiceMix components,
    
    
    
    
    
    
    
    
    
    
    
     as
     well
     as providing
    
     a
     reactor
     build
    
     for
    
     those
     components.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    25205
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: JSR-223 Scripting Service Engine'/>
    <p n='symbolicname' v='servicemix-scripting'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.scripting'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.scripting'/>
    <p n='uses' v='javax.jbi.messaging,javax.jbi.component,javax.xml.namespace,org.apache.commons.logging,javax.jbi,javax.script,org.springframework.core.io,org.apache.servicemix.common,org.apache.servicemix.common.endpoints'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package META-INF.services
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.scripting)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.scripting
  </require>
  <require extend='false' filter='(&amp;(package=com.google.code.scriptengines.groovy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.google.code.scriptengines.groovy
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.script)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.script
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.scripting)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.scripting ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
</resource>
<resource id='servicemix-scripting/2009.1.0' presentationname='ServiceMix :: JSR-223 Scripting Service Engine' symbolicname='servicemix-scripting' uri='../org/apache/servicemix/servicemix-scripting/2009.01/servicemix-scripting-2009.01.jar' version='2009.1.0'>
  <description>
    This pom provides the common bits for all ServiceMix components,
    
    
    
    
    
    
    
    
    
    
    
     as
     well
     as providing
    
     a
     reactor
     build
    
     for
    
     those
     components.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26906
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: JSR-223 Scripting Service Engine'/>
    <p n='symbolicname' v='servicemix-scripting'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.scripting'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.scripting'/>
    <p n='uses' v='javax.jbi.messaging,javax.jbi.component,javax.activation,javax.xml.namespace,javax.jbi.servicedesc,org.apache.commons.logging,javax.jbi,javax.script,org.apache.servicemix.common.util,org.springframework.core.io,org.apache.servicemix.common.endpoints,org.apache.servicemix.common'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.scripting)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.scripting
  </require>
  <require extend='false' filter='(&amp;(package=com.google.code.scriptengines.groovy)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.google.code.scriptengines.groovy
  </require>
  <require extend='false' filter='(&amp;(package=javax.activation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.activation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.script)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.script
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.scripting)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.scripting ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='servicemix-xmpp/2009.1.0' presentationname='ServiceMix :: XMPP' symbolicname='servicemix-xmpp' uri='../org/apache/servicemix/servicemix-xmpp/2009.01/servicemix-xmpp-2009.01.jar' version='2009.1.0'>
  <description>
    An XMPP component for communicating with Jabber networks
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    27294
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: XMPP'/>
    <p n='symbolicname' v='servicemix-xmpp'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.xmpp'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.jivesoftware.smack.packet,javax.xml.namespace,org.jivesoftware.smack,org.apache.commons.logging,javax.jbi.servicedesc,javax.xml.transform,org.jivesoftware.smack.filter,org.apache.servicemix.common.util,org.apache.servicemix.common.endpoints,org.apache.servicemix.common,org.springframework.beans,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.xmpp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.xmpp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.xmpp
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.xmpp)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.xmpp ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.filter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.filter
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.packet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.packet
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='servicemix-xmpp/2008.1.0' presentationname='ServiceMix :: XMPP' symbolicname='servicemix-xmpp' uri='../org/apache/servicemix/servicemix-xmpp/2008.01/servicemix-xmpp-2008.01.jar' version='2008.1.0'>
  <description>
    An XMPP component for communicating with Jabber networks
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    27693
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: XMPP'/>
    <p n='symbolicname' v='servicemix-xmpp'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.xmpp'/>
    <p n='uses' v='org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,org.jivesoftware.smack.packet,javax.xml.namespace,org.jivesoftware.smack,org.apache.commons.logging,javax.jbi.servicedesc,javax.xml.transform,org.jivesoftware.smack.filter,org.apache.servicemix.common.util,org.apache.servicemix.common.endpoints,org.apache.servicemix.common,org.springframework.beans,org.springframework.beans.factory'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.xmpp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.xmpp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.xmpp
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.xmpp)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.xmpp ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.filter)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.filter
  </require>
  <require extend='false' filter='(&amp;(package=org.jivesoftware.smack.packet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.jivesoftware.smack.packet
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml ;version=2.5.0
  </require>
</resource>
<resource id='servicemix-http/2009.1.0' presentationname='ServiceMix :: HTTP' symbolicname='servicemix-http' uri='../org/apache/servicemix/servicemix-http/2009.01/servicemix-http-2009.01.jar' version='2009.1.0'>
  <description>
    HTTP Binding Component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    138509
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: HTTP'/>
    <p n='symbolicname' v='servicemix-http'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.http.jetty'/>
    <p n='uses' v='javax.servlet.http,org.mortbay.thread,org.mortbay.log,javax.servlet,org.apache.servicemix.http,org.springframework.core.io,org.mortbay.io,org.mortbay.jetty.handler,org.mortbay.jetty,org.mortbay.util,org.mortbay.component,javax.management,org.apache.commons.logging,javax.jbi,org.mortbay.jetty.security,org.apache.servicemix.common.security,org.mortbay.management,org.mortbay.jetty.servlet,org.mortbay.jetty.client,javax.security.auth,javax.net.ssl'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.http.endpoints'/>
    <p n='uses' v='javax.servlet.http,org.apache.servicemix.soap.api,javax.wsdl.extensions.soap,javax.xml.namespace,org.apache.servicemix.expression,javax.wsdl.extensions.soap12,javax.xml.transform,org.apache.servicemix.http.jetty,org.apache.servicemix.common.tools.wsdl,javax.servlet,javax.wsdl.factory,org.springframework.core.io,org.apache.servicemix.common,org.mortbay.io,javax.xml.transform.stream,com.thoughtworks.xstream.io,org.apache.servicemix.jbi.jaxp,javax.wsdl.xml,org.apache.servicemix.soap.wsdl,javax.jbi.component,org.apache.servicemix.soap.util,javax.jbi.servicedesc,org.apache.servicemix.soap.api.model,org.apache.woden.types,javax.security.auth,org.apache.woden.wsdl20,org.apache.servicemix.soap.wsdl.validator,org.mortbay.thread,org.apache.servicemix.soap.bindings.soap,org.mortbay.resource,javax.jbi.management,com.thoughtworks.xstream.io.xml,org.apache.servicemix.http,javax.wsdl.extensions.schema,org.apache.woden.wsdl20.xml,org.mortbay.jetty,javax.xml.stream,javax.wsdl,javax.jbi.messaging,org.xml.sax,org.mortbay.jetty.client.security,org.w3c.dom,org.apache.commons.logging,org.apache.woden,javax.jbi,javax.xml.transform.dom,org.apache.servicemix.common.security,javax.wsdl.extensions,com.thoughtworks.xstream,org.apache.servicemix.common.endpoints,org.mortbay.jetty.client,org.mortbay.util.ajax,javax.net.ssl'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.http'/>
    <p n='uses' v='javax.servlet.http,javax.wsdl.extensions.soap,org.apache.commons.httpclient.params,org.apache.commons.httpclient.auth,org.mortbay.thread,org.mortbay.jetty.nio,javax.xml.namespace,javax.jbi.management,org.apache.servicemix.expression,org.apache.servicemix.http.processors,org.apache.servicemix.common.tools.wsdl,org.apache.servicemix.http.jetty,javax.servlet,javax.naming,org.apache.servicemix.common,org.mortbay.util,javax.wsdl,javax.jbi.messaging,javax.jbi.component,javax.management,org.w3c.dom,org.apache.commons.logging,javax.jbi.servicedesc,org.apache.servicemix.common.wsdl1,javax.jbi,org.apache.commons.httpclient,org.apache.servicemix.common.security,org.apache.servicemix.http.endpoints,javax.wsdl.extensions,javax.wsdl.extensions.http,org.apache.servicemix.common.util,org.apache.servicemix.common.endpoints,org.apache.servicemix.common.xbean,org.mortbay.jetty.client,org.apache.servicemix.soap,com.ibm.wsdl.extensions.http'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.http.packaging'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.http,javax.xml.namespace,org.apache.servicemix.common,org.apache.servicemix.common.xbean,org.apache.servicemix.common.packaging'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.http'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.http.processors'/>
    <p n='uses' v='javax.servlet.http,org.apache.commons.httpclient.params,org.apache.commons.httpclient.protocol,javax.xml.namespace,org.mortbay.resource,javax.xml.transform,org.apache.servicemix.http.jetty,org.apache.commons.httpclient.methods,javax.servlet,org.apache.servicemix.http,org.springframework.core.io,org.apache.servicemix.common,org.apache.servicemix.soap.marshalers,org.mortbay.jetty,javax.xml.transform.stream,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.jbi.component,org.w3c.dom,org.apache.commons.logging,javax.jbi,org.apache.commons.httpclient,javax.xml.transform.dom,org.apache.servicemix.common.security,org.mortbay.util.ajax,javax.security.auth,org.apache.servicemix.soap,javax.net.ssl'/>
    <p n='version' t='version' v='2009.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.http
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.schema)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.schema
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.methods)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.methods
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.params)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.params
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.protocol)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.protocol
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.packaging)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.packaging ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.security)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.security ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.tools.wsdl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.tools.wsdl ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.wsdl1)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.wsdl1 ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.xbean)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.xbean ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.http)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.http ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.http.endpoints)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.http.endpoints ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.http.jetty)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.http.jetty ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.http.packaging)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.http.packaging ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.http.processors)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.http.processors ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.api)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.api ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.api.model)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.api.model ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.soap)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.soap ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.marshalers)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.marshalers ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.util)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.util ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.wsdl)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.wsdl ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.wsdl.validator)(version&gt;=2009.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.wsdl.validator ;version=2009.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.component)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.component ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.io)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.io ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.client)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.client ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.client.security)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.client.security ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.handler ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.nio ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.security ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.servlet ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.log)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.log ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.management)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.management ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.resource)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.resource ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.thread ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.util ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.util.ajax ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=sun.misc)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package sun.misc
  </require>
</resource>
<resource id='servicemix-http/2008.1.0' presentationname='ServiceMix :: HTTP' symbolicname='servicemix-http' uri='../org/apache/servicemix/servicemix-http/2008.01/servicemix-http-2008.01.jar' version='2008.1.0'>
  <description>
    HTTP Binding Component
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    135756
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='ServiceMix :: HTTP'/>
    <p n='symbolicname' v='servicemix-http'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.http.jetty'/>
    <p n='uses' v='javax.servlet.http,org.mortbay.thread,org.mortbay.log,javax.servlet,org.apache.servicemix.http,org.springframework.core.io,org.mortbay.io,org.mortbay.jetty.handler,org.mortbay.jetty,org.mortbay.util,org.mortbay.component,javax.management,org.apache.commons.logging,javax.jbi,org.mortbay.jetty.security,org.apache.servicemix.common.security,org.mortbay.management,org.mortbay.jetty.servlet,org.mortbay.jetty.client,javax.security.auth,javax.net.ssl'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.http.endpoints'/>
    <p n='uses' v='javax.servlet.http,org.apache.servicemix.soap.api,javax.wsdl.extensions.soap,javax.xml.namespace,javax.wsdl.extensions.soap12,org.apache.servicemix.expression,javax.xml.transform,org.apache.servicemix.http.jetty,javax.servlet,javax.wsdl.factory,org.springframework.core.io,org.apache.servicemix.common,org.mortbay.io,javax.xml.transform.stream,com.thoughtworks.xstream.io,org.apache.servicemix.jbi.jaxp,org.apache.servicemix.soap.wsdl,javax.wsdl.xml,javax.jbi.component,org.apache.servicemix.soap.util,javax.jbi.servicedesc,org.apache.servicemix.soap.api.model,org.apache.woden.types,javax.security.auth,org.apache.woden.wsdl20,org.apache.servicemix.soap.wsdl.validator,org.mortbay.thread,org.apache.servicemix.soap.bindings.soap,org.mortbay.resource,javax.jbi.management,com.thoughtworks.xstream.io.xml,org.apache.servicemix.http,org.apache.woden.wsdl20.xml,org.mortbay.jetty,javax.xml.stream,javax.wsdl,javax.jbi.messaging,org.xml.sax,org.mortbay.jetty.client.security,org.w3c.dom,org.apache.commons.logging,org.apache.woden,javax.xml.transform.dom,org.apache.servicemix.common.security,javax.wsdl.extensions,com.thoughtworks.xstream,org.apache.servicemix.common.endpoints,org.mortbay.jetty.client,org.mortbay.util.ajax,javax.net.ssl'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.http.tools'/>
    <p n='uses' v='javax.wsdl,javax.wsdl.extensions.soap,javax.wsdl.extensions,com.ibm.wsdl.extensions.soap,javax.wsdl.factory,javax.xml.namespace,com.ibm.wsdl.extensions.soap12,javax.wsdl.extensions.soap12'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.http'/>
    <p n='uses' v='javax.servlet.http,javax.wsdl.extensions.soap,org.apache.servicemix.http.tools,org.apache.commons.httpclient.params,org.apache.commons.httpclient.auth,org.mortbay.thread,org.mortbay.jetty.nio,javax.xml.namespace,org.apache.servicemix.jbi.framework,javax.jbi.management,org.apache.servicemix.expression,org.apache.servicemix.http.processors,org.apache.servicemix.http.jetty,javax.servlet,javax.naming,org.apache.servicemix.common,org.mortbay.util,javax.wsdl,javax.jbi.messaging,javax.jbi.component,javax.management,org.springframework.web.context,org.w3c.dom,org.apache.commons.logging,javax.jbi.servicedesc,org.springframework.context,org.apache.servicemix.common.wsdl1,javax.jbi,org.apache.commons.httpclient,org.apache.servicemix.common.security,org.apache.servicemix.http.endpoints,javax.wsdl.extensions,org.apache.servicemix.jbi.container,javax.wsdl.extensions.http,org.apache.servicemix.common.util,org.apache.servicemix.common.endpoints,org.apache.servicemix.common.xbean,org.mortbay.jetty.client,org.apache.servicemix.soap,org.springframework.web.context.support,com.ibm.wsdl.extensions.http'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.http.packaging'/>
    <p n='uses' v='javax.jbi.messaging,org.apache.servicemix.http,javax.xml.namespace,org.apache.servicemix.common,org.apache.servicemix.common.xbean,org.apache.servicemix.common.packaging'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.http'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.http.processors'/>
    <p n='uses' v='javax.servlet.http,org.apache.commons.httpclient.params,org.apache.commons.httpclient.protocol,javax.xml.namespace,org.mortbay.resource,javax.xml.transform,org.apache.servicemix.http.jetty,org.apache.commons.httpclient.methods,javax.servlet,org.apache.servicemix.http,org.springframework.core.io,org.apache.servicemix.common,javax.xml.transform.stream,org.mortbay.jetty,org.apache.servicemix.soap.marshalers,org.apache.servicemix.jbi.jaxp,javax.jbi.messaging,javax.jbi.component,org.w3c.dom,org.apache.commons.logging,javax.jbi,org.apache.commons.httpclient,javax.xml.transform.dom,org.apache.servicemix.common.security,org.mortbay.util.ajax,javax.security.auth,org.apache.servicemix.soap,javax.net.ssl'/>
    <p n='version' t='version' v='2008.1.0'/>
  </capability>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.core)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.core; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.beans)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.beans; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=org.springframework.bundle.spring.context)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle org.springframework.bundle.spring.context; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(symbolicname=null)(version&gt;=0.0.0))' multiple='false' name='bundle' optional='false'>
    Require Bundle null; 0.0.0
  </require>
  <require extend='false' filter='(&amp;(package=META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package META-INF.services.org.apache.xbean.spring.http.servicemix.apache.org.http
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=com.ibm.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package com.ibm.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io
  </require>
  <require extend='false' filter='(&amp;(package=com.thoughtworks.xstream.io.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.thoughtworks.xstream.io.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.component
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.messaging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.messaging
  </require>
  <require extend='false' filter='(&amp;(package=javax.jbi.servicedesc)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jbi.servicedesc
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.extensions.soap12)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.extensions.soap12
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.factory
  </require>
  <require extend='false' filter='(&amp;(package=javax.wsdl.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.wsdl.xml
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.stream)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.stream ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.auth
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.methods)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.methods
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.params)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.params
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.httpclient.protocol)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.httpclient.protocol
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.osgi)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.osgi ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.packaging)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.packaging ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.security)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.security ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.wsdl1)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.wsdl1 ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.common.xbean)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.common.xbean ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.executors.impl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.executors.impl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.expression)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.expression
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.http)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.http ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.http.endpoints)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.http.endpoints ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.http.jetty)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.http.jetty ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.http.packaging)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.http.packaging ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.http.processors)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.http.processors ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.http.tools)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.http.tools ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.container)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.container
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.servicemix.jbi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.jbi.jaxp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.jbi.jaxp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.kernel.jaas.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.kernel.jaas.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.nmr.api.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.nmr.api.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.api)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.api ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.api.model)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.api.model ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.bindings.soap)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.bindings.soap ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.marshalers)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.marshalers ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.util)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.util ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.wsdl)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.wsdl ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.soap.wsdl.validator)(version&gt;=2008.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.soap.wsdl.validator ;version=2008.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.woden.wsdl20.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.woden.wsdl20.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.spring.context.v2)(version&gt;=3.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.spring.context.v2 ;version=3.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.component)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.component ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.io)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.io ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.client)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.client ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.client.security)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='true'>
    Import package org.mortbay.jetty.client.security ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.handler)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.handler ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.nio)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.nio ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.security)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.security ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.jetty.servlet)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.jetty.servlet ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.log)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.log ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.management)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.management ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.resource)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.resource ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.thread)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.thread ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.util ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.mortbay.util.ajax)(version&gt;=6.1.0)(!(version&gt;=6.2.0)))' multiple='false' name='package' optional='false'>
    Import package org.mortbay.util.ajax ;version=[6.1.0,6.2.0)
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.core.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.core.io
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.web.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.web.context
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.web.context.support)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.springframework.web.context.support
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.servicemix.naming/1.0.0' presentationname='Apache ServiceMix Naming' symbolicname='org.apache.servicemix.naming' uri='../org/apache/servicemix/naming/org.apache.servicemix.naming/1.0.0/org.apache.servicemix.naming-1.0.0.jar' version='1.0.0'>
  <description>
    This pom provides project information that is common to all
    
    
    
    
    
    
    
    
    
    
    
     ServiceMix
    
     branches.
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17619
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache ServiceMix Naming'/>
    <p n='symbolicname' v='org.apache.servicemix.naming'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.servicemix.naming'/>
    <p n='uses' v='org.osgi.framework,org.apache.xbean.naming.context,javax.naming.spi,org.springframework.osgi.service.importer.support,org.springframework.osgi.context,javax.naming,org.osgi.util.tracker,org.apache.xbean.naming.global,org.springframework.osgi.service,org.springframework.util,org.springframework.beans.factory'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.servicemix.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.servicemix.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.context)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.context ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xbean.naming.global)(version&gt;=3.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.xbean.naming.global ;version=3.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.beans.factory)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.beans.factory ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.context)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.context ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.service)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.service ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.osgi.service.importer.support)(version&gt;=1.2.0.m2))' multiple='false' name='package' optional='false'>
    Import package org.springframework.osgi.service.importer.support
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.2.0.m2
  </require>
  <require extend='false' filter='(&amp;(package=org.springframework.util)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package org.springframework.util ;version=2.5.0
  </require>
</resource>
<resource id='org.apache.sling.jcr.jackrabbit.usermanager/2.0.2.incubator' presentationname='Apache Sling Jackrabbit UserManager Support' symbolicname='org.apache.sling.jcr.jackrabbit.usermanager' uri='../org/apache/sling/org.apache.sling.jcr.jackrabbit.usermanager/2.0.2-incubator/org.apache.sling.jcr.jackrabbit.usermanager-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Provides ResourceProvider and SlingPostOperations for the Jackrabbit
    
    
    
    
    
    
    
    
    
    
    
    		UserManager.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    53096
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Jackrabbit UserManager Support'/>
    <p n='symbolicname' v='org.apache.sling.jcr.jackrabbit.usermanager'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.security.principal)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.security.principal
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.security.user)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.security.user ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.adapter)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.adapter ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.request)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.request ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.wrappers)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.wrappers ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.base.util)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.base.util ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.servlets.post)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.servlets.post ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.servlets.get/2.0.2.incubator' presentationname='Sling - Default GET Servlets' symbolicname='org.apache.sling.servlets.get' uri='../org/apache/sling/org.apache.sling.servlets.get/2.0.2-incubator/org.apache.sling.servlets.get-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Provides default GET servlets for HTML, Text and JSON rendering
    
    
    
    
    
    
    
    
    
    
    
       
         and
     streaming
    
     resources.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    32828
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Default GET Servlets'/>
    <p n='symbolicname' v='org.apache.sling.servlets.get'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.request)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.request ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json.io)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json.io ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json.jcr)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json.jcr ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.servlets.get/2.0.4.incubator' presentationname='Apache Sling Default GET Servlets' symbolicname='org.apache.sling.servlets.get' uri='../org/apache/sling/org.apache.sling.servlets.get/2.0.4-incubator/org.apache.sling.servlets.get-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    Provides default GET servlets for HTML, Text and JSON rendering
    
    
    
    
    
    
    
    
    
    
    
       
         and
     streaming
    
     resources.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    44278
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Default GET Servlets'/>
    <p n='symbolicname' v='org.apache.sling.servlets.get'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.adapter)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.adapter ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.request)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.request ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json.io)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json.io ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.sling.adapter/2.0.2.incubator' presentationname='Sling - AdapterManager implementation' symbolicname='org.apache.sling.adapter' uri='../org/apache/sling/org.apache.sling.adapter/2.0.2-incubator/org.apache.sling.adapter-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Bundle implementing the AdapterManager and provides a convenience
    
    
    
    
    
    
    
    
    
    
    
       
         implementation
    
    
     of
     the
     Adaptable
    
    
     interface

        

         to
     make

   
          use

         of this
       
     
        AdapterManager.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17083
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - AdapterManager implementation'/>
    <p n='symbolicname' v='org.apache.sling.adapter'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.adapter'/>
    <p n='uses' v='org.apache.sling.api.adapter'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.sling.adapter)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.adapter ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.adapter)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.adapter ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log
  </require>
</resource>
<resource id='org.apache.sling.commons.mime/2.0.4.incubator' presentationname='Apache Sling MIME type mapping support' symbolicname='org.apache.sling.commons.mime' uri='../org/apache/sling/org.apache.sling.commons.mime/2.0.4-incubator/org.apache.sling.commons.mime-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    Support for configurable MIME type mapping and querying
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15994
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling MIME type mapping support'/>
    <p n='symbolicname' v='org.apache.sling.commons.mime'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.mime'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.mime)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.mime ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log
  </require>
</resource>
<resource id='org.apache.sling.commons.mime/2.0.2.incubator' presentationname='Sling - MIME type mapping support' symbolicname='org.apache.sling.commons.mime' uri='../org/apache/sling/org.apache.sling.commons.mime/2.0.2-incubator/org.apache.sling.commons.mime-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Support for configurable MIME type mapping and querying
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15764
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - MIME type mapping support'/>
    <p n='symbolicname' v='org.apache.sling.commons.mime'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.mime'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.mime)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.mime ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log
  </require>
</resource>
<resource id='org.apache.sling.commons.mime/2.1.0.incubator' presentationname='Apache Sling MIME type mapping support' symbolicname='org.apache.sling.commons.mime' uri='../org/apache/sling/org.apache.sling.commons.mime/2.1.0-incubator/org.apache.sling.commons.mime-2.1.0-incubator.jar' version='2.1.0.incubator'>
  <description>
    Support for configurable MIME type mapping and querying
  </description>
  <documentation>
    http://incubator.apache.org/sling/site/mime-type-support.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    35254
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling MIME type mapping support'/>
    <p n='symbolicname' v='org.apache.sling.commons.mime'/>
    <p n='version' t='version' v='2.1.0.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.mime'/>
    <p n='version' t='version' v='2.1.0.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.webconsole)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.webconsole
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.mime)(version&gt;=2.1.0.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.mime ;version=2.1.0.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log
  </require>
</resource>
<resource id='org.apache.sling.event/2.0.4.incubator' presentationname='Apache Sling Event Support' symbolicname='org.apache.sling.event' uri='../org/apache/sling/org.apache.sling.event/2.0.4-incubator/org.apache.sling.event-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    Support for eventing.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    119717
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Event Support'/>
    <p n='symbolicname' v='org.apache.sling.event'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.event'/>
    <p n='uses' v='org.osgi.service.event,org.slf4j,javax.jcr.nodetype,javax.jcr,org.apache.sling.commons.threads'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.name)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.name ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.scheduler)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.scheduler ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.threads)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.threads ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.engine)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.engine ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.event)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.event ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.resource)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.resource ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.event
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.event/2.0.2.incubator' presentationname='Sling - Event Support' symbolicname='org.apache.sling.event' uri='../org/apache/sling/org.apache.sling.event/2.0.2-incubator/org.apache.sling.event-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Support for eventing.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    98703
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Event Support'/>
    <p n='symbolicname' v='org.apache.sling.event'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.event'/>
    <p n='uses' v='org.osgi.service.event,org.slf4j'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.name)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.name ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.scheduler)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.scheduler ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.threads)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.threads ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.engine)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.engine ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.event)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.event ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.event
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.launchpad.content/2.0.4.incubator' presentationname='Apache Sling Launchpad Content' symbolicname='org.apache.sling.launchpad.content' uri='../org/apache/sling/org.apache.sling.launchpad.content/2.0.4-incubator/org.apache.sling.launchpad.content-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    This bundle provides content that is loaded in the JCR repository
    
    
    
    
    
    
    
    
    
    
    
       
     for the
     Sling
     Launchpad.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    25022
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Launchpad Content'/>
    <p n='symbolicname' v='org.apache.sling.launchpad.content'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
</resource>
<resource id='org.apache.sling.launchpad.content/2.0.2.incubator' presentationname='Sling - Launchpad Content' symbolicname='org.apache.sling.launchpad.content' uri='../org/apache/sling/org.apache.sling.launchpad.content/2.0.2-incubator/org.apache.sling.launchpad.content-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    This bundle provides content that is loaded in the JCR repository
    
    
    
    
    
    
    
    
    
    
    
       
     for the
     Sling
     Launchpad.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    19969
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Launchpad Content'/>
    <p n='symbolicname' v='org.apache.sling.launchpad.content'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
</resource>
<resource id='org.apache.sling.jcr.api/2.0.4' presentationname='Apache Sling Repository API Bundle' symbolicname='org.apache.sling.jcr.api' uri='../org/apache/sling/org.apache.sling.jcr.api/2.0.4/org.apache.sling.jcr.api-2.0.4.jar' version='2.0.4'>
  <description>
    This OSGi bundle provides the JCR packages as        well as
    
    
    
    
    
    
    
    
    
    
    
     a helper
    
     service
     interface
    
     to
     be
     implemented
    
    
    
    
     and
        
 
         
      provided
    
  
      
     by
    
     repository providers.
  </description>
  <documentation>
    http://sling.apache.org
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    12109
  </size>
  <category id='sling'/>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Repository API Bundle'/>
    <p n='symbolicname' v='org.apache.sling.jcr.api'/>
    <p n='version' t='version' v='2.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.jcr.api'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='2.0.4'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.0
  </require>
</resource>
<resource id='org.apache.sling.jcr.api/2.0.2.incubator' presentationname='Sling - Repository API Bundle' symbolicname='org.apache.sling.jcr.api' uri='../org/apache/sling/org.apache.sling.jcr.api/2.0.2-incubator/org.apache.sling.jcr.api-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    This OSGi bundle provides the JCR packages as        well as
    
    
    
    
    
    
    
    
    
    
    
     a helper
    
     service
     interface
    
     to
     be
     implemented
    
    
    
    
     and
        
 
         
      provided
    
  
      
     by
    
     repository providers.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    46787
  </size>
  <category id='sling'/>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Repository API Bundle'/>
    <p n='symbolicname' v='org.apache.sling.jcr.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jcr.lock'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.jcr.api'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jcr.query'/>
    <p n='uses' v='javax.jcr.lock,javax.jcr.version,javax.jcr.nodetype,javax.jcr'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jcr.observation'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jcr.version'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jcr.nodetype'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jcr'/>
    <p n='uses' v='javax.jcr.lock,org.xml.sax,javax.jcr.query,javax.jcr.observation,javax.jcr.nodetype,javax.jcr.version'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.jcr.util'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.sling.jcr.contentloader/2.0.2.incubator' presentationname='Sling - Initial Content Loader' symbolicname='org.apache.sling.jcr.contentloader' uri='../org/apache/sling/org.apache.sling.jcr.contentloader/2.0.2-incubator/org.apache.sling.jcr.contentloader-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    This bundle provides initial content installation through bundles.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    79931
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Initial Content Loader'/>
    <p n='symbolicname' v='org.apache.sling.jcr.contentloader'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.mime)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.mime ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.engine)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.engine ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.jcr.contentloader/2.0.4.incubator' presentationname='Apache Sling Initial Content Loader' symbolicname='org.apache.sling.jcr.contentloader' uri='../org/apache/sling/org.apache.sling.jcr.contentloader/2.0.4-incubator/org.apache.sling.jcr.contentloader-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    This bundle provides initial content installation through bundles.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    94308
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Initial Content Loader'/>
    <p n='symbolicname' v='org.apache.sling.jcr.contentloader'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.io.input)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.io.input ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.mime)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.mime ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.engine)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.engine ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.fsresource/0.9.2.incubator' presentationname='Apache Sling Filesystem Resource Provider' symbolicname='org.apache.sling.fsresource' uri='../org/apache/sling/org.apache.sling.fsresource/0.9.2-incubator/org.apache.sling.fsresource-0.9.2-incubator.jar' version='0.9.2.incubator'>
  <description>
    Provides a ResourceProvider implementation supporting filesystem
    
    
    
    
    
    
    
    
    
    
    
       
         based
    
     resources.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    21159
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Filesystem Resource Provider'/>
    <p n='symbolicname' v='org.apache.sling.fsresource'/>
    <p n='version' t='version' v='0.9.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.adapter)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.adapter ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.jcr.jackrabbit.api/2.0.2.incubator' presentationname='Sling - Jackrabbit API Bundle' symbolicname='org.apache.sling.jcr.jackrabbit.api' uri='../org/apache/sling/org.apache.sling.jcr.jackrabbit.api/2.0.2-incubator/org.apache.sling.jcr.jackrabbit.api-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    This OSGi bundle provides the Jackrabbit API packages.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10086
  </size>
  <category id='sling'/>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Jackrabbit API Bundle'/>
    <p n='symbolicname' v='org.apache.sling.jcr.jackrabbit.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.api'/>
    <p n='uses' v='org.xml.sax,javax.transaction.xa,javax.jcr.nodetype,javax.jcr'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.sling.servlets.resolver/2.0.4.incubator' presentationname='Sling - Servlet Resolver' symbolicname='org.apache.sling.servlets.resolver' uri='../org/apache/sling/org.apache.sling.servlets.resolver/2.0.4-incubator/org.apache.sling.servlets.resolver-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    Bundle implementing the Sling API ServletResolver.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    39811
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Servlet Resolver'/>
    <p n='symbolicname' v='org.apache.sling.servlets.resolver'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.adapter)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.adapter ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.request)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.request ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.scripting)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.scripting ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.engine)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.engine ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.engine.servlets)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.engine.servlets ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.servlets.resolver/2.0.6.incubator' presentationname='Apache Sling Servlet Resolver' symbolicname='org.apache.sling.servlets.resolver' uri='../org/apache/sling/org.apache.sling.servlets.resolver/2.0.6-incubator/org.apache.sling.servlets.resolver-2.0.6-incubator.jar' version='2.0.6.incubator'>
  <description>
    Bundle implementing the Sling API ServletResolver.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    40287
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Servlet Resolver'/>
    <p n='symbolicname' v='org.apache.sling.servlets.resolver'/>
    <p n='version' t='version' v='2.0.6.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.adapter)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.adapter ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.request)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.request ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.scripting)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.scripting ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.engine)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.engine ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.engine.servlets)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.engine.servlets ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.api/2.0.6' presentationname='Apache Sling API' symbolicname='org.apache.sling.api' uri='../org/apache/sling/org.apache.sling.api/2.0.6/org.apache.sling.api-2.0.6.jar' version='2.0.6'>
  <description>
    The Apache Sling API defines an extension to the Servlet  
    
    
    
    
    
    
    
    
    
    
    
       
       API
     2.4
     to provide
    
     access
     to
 
        content
    
     and
    
     unified
  
      
  
 
          access
  

                
 
         to request parameters
    
    
    
  
      
     hiding the differences
    
    
    
 
       
    
  
       between
 
        the   
       
    
      different
   
  
        methods
    
     of transferring
    
  
      
    
     parameters
    
     from

        
 
        client
  
      
    
          
      to server. Note
     that
    
     the
   
     
    
     Apache
    
    
 
        Sling API
     bundle
    
  
       does not
 
      
             include
    
    
 
        the
  
       Servlet
    
    
    
     API but
     instead
     requires
  
    
      
  
       the
    
     API to
            be
     provided
    

    
        
  
      
     by the Servlet
     container
    
     in

    
    
        
  
       which
     the Apache
    
           
     Sling
    
    
     framework
    
    
    
    
     is running
     or by another
    
    
    
  
    
    
       bundle.
  </description>
  <documentation>
    http://sling.apache.org/site/sling-api.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    55475
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling API'/>
    <p n='symbolicname' v='org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.servlets'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.sling.api,org.apache.sling.api.wrappers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.adapter'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.resource'/>
    <p n='uses' v='org.apache.sling.api,org.apache.sling.api.adapter,javax.servlet.http,org.apache.sling.api.wrappers'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.wrappers'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.sling.api.resource,org.apache.sling.api.request,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.request'/>
    <p n='uses' v='org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.scripting'/>
    <p n='uses' v='org.apache.sling.api,org.apache.sling.api.resource,org.slf4j,org.apache.sling.api.request'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.sling.api.adapter,org.apache.sling.api.resource,org.apache.sling.api.request'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.adapter)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.adapter ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.request)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.request ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.scripting)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.scripting ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.wrappers)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.wrappers ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.5.0
  </require>
</resource>
<resource id='org.apache.sling.api/2.0.4.incubator' presentationname='Apache Sling API' symbolicname='org.apache.sling.api' uri='../org/apache/sling/org.apache.sling.api/2.0.4-incubator/org.apache.sling.api-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    The Apache Sling API defines an extension to the Servlet  
    
    
    
    
    
    
    
    
    
    
    
       
       API
     2.4
     to provide
    
     access
     to
 
        content
    
     and
    
     unified
  
      
  
 
          access
  

                
 
         to request parameters
    
    
    
  
      
     hiding the differences
    
    
    
 
       
    
  
       between
 
        the   
       
    
      different
   
  
        methods
    
     of transferring
    
  
      
    
     parameters
    
     from

        
 
        client
  
      
    
          
      to server. Note
     that
    
     the
   
     
    
     Apache
    
    
 
        Sling API
     bundle
    
  
       does not
 
      
             include
    
    
 
        the
  
       Servlet
    
    
    
     API but
     instead
     requires
  
    
      
  
       the
    
     API to
            be
     provided
    

    
        
  
      
     by the Servlet
     container
    
     in

    
    
        
  
       which
     the Apache
    
           
     Sling
    
    
     framework
    
    
    
    
     is running
     or by another
    
    
    
  
    
    
       bundle.
  </description>
  <documentation>
    http://incubator.apache.org/sling/site/sling-api.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    52060
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling API'/>
    <p n='symbolicname' v='org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.servlets'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.sling.api.wrappers,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.adapter'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.resource'/>
    <p n='uses' v='javax.servlet.http,org.apache.sling.api.adapter,org.apache.sling.api.wrappers,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.wrappers'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.sling.api.resource,org.apache.sling.api.request,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.request'/>
    <p n='uses' v='org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.scripting'/>
    <p n='uses' v='org.apache.sling.api.resource,org.slf4j,org.apache.sling.api.request,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.sling.api.resource,org.apache.sling.api.request'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.adapter)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.adapter ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.request)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.request ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.scripting)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.scripting ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.wrappers)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.wrappers ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.api/2.0.2.incubator' presentationname='Sling - Servlet Extension API' symbolicname='org.apache.sling.api' uri='../org/apache/sling/org.apache.sling.api/2.0.2-incubator/org.apache.sling.api-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    The Sling API defines an extension to the Servlet API 2.4 to
    
    
    
    
    
    
    
    
    
    
    
       
         provide
    
     access
     to
     content
    
  
       and unified
  
      
  
       access
  
       to
  

           request
  
    
         
    
         parameters hiding
    
    
    
  
       the
     differences
    
    
     between
    
    
   
      the different
    
    
    

         methods
    
  
              of
     transferring
    
    
 

      
          parameters
     from
 
      
      client
     to
 
       
     server.

       
      Note that the
    
  
    
         
       
      Sling
     API
  
       bundle
   
  
    
        does
     not include
    
     the
     Servlet

        

      
       API but instead
    
    
     
 
    
      
       
         requires
     the API to be
  
    
  
         provided
 
      
     
   
      by the
  
       Servlet
    
    
 
       
     container in 
           which

     
        the
  
       Sling
    
    
     framework
    
    
     is running
    
  

       
        or
   
     
     by another
     bundle.
  </description>
  <documentation>
    http://incubator.apache.org/sling/site/sling-api.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    46742
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Servlet Extension API'/>
    <p n='symbolicname' v='org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.servlets'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.sling.api.wrappers,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.adapter'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.resource'/>
    <p n='uses' v='javax.servlet.http,org.apache.sling.api.adapter,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.wrappers'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.sling.api.resource,org.apache.sling.api.request,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.request'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api.scripting'/>
    <p n='uses' v='org.apache.sling.api.resource,org.slf4j,org.apache.sling.api.request,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.api'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.sling.api.resource,org.apache.sling.api.request'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.adapter)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.adapter ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.request)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.request ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.scripting)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.scripting ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.wrappers)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.wrappers ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.commons.scheduler/2.0.2.incubator' presentationname='Sling - Scheduler Support' symbolicname='org.apache.sling.commons.scheduler' uri='../org/apache/sling/org.apache.sling.commons.scheduler/2.0.2-incubator/org.apache.sling.commons.scheduler-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Support for scheduling.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    971185
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Scheduler Support'/>
    <p n='symbolicname' v='org.apache.sling.commons.scheduler'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.scheduler'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.loading)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.loading
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.comparators)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.comparators
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.keyvalue)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.keyvalue
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.list)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.list
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.set)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.set
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.scheduler)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.scheduler ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.threads)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.threads ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.sling.commons.scheduler/2.0.4.incubator' presentationname='Apache Sling Scheduler Support' symbolicname='org.apache.sling.commons.scheduler' uri='../org/apache/sling/org.apache.sling.commons.scheduler/2.0.4-incubator/org.apache.sling.commons.scheduler-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    Support for scheduling.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    971763
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Scheduler Support'/>
    <p n='symbolicname' v='org.apache.sling.commons.scheduler'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.scheduler'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.loading)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.loading
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.rmi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.rmi
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.comparators)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.comparators
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.keyvalue)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.keyvalue
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.list)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.list
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.set)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.set
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.scheduler)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.scheduler ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.threads)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.threads ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='system.bundle/2.0.4.incubator' presentationname='Apache Sling Launchpad Base' symbolicname='system.bundle' uri='../org/apache/sling/org.apache.sling.launchpad.base/2.0.4-incubator/org.apache.sling.launchpad.base-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    This module contains the common classes and configuration files
    
    
    
    
    
    
    
    
    
    
    
     used
       
         by
     the
     various
     launchpad
    

         modules..
  </description>
  <documentation>
    http://cwiki.apache.org/SLING/the-sling-launchpad.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    681316
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Launchpad Base'/>
    <p n='symbolicname' v='system.bundle'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
</resource>
<resource id='org.apache.sling.commons.log/2.0.6' presentationname='Apache Sling OSGi LogService Implementation' symbolicname='org.apache.sling.commons.log' uri='../org/apache/sling/org.apache.sling.commons.log/2.0.6/org.apache.sling.commons.log-2.0.6.jar' version='2.0.6'>
  <description>
    Implementation of the OSGi Compendium Log Service using SLF4J
    
    
    
    
    
    
    
    
    
    
    
       
         on
     top
     of a
     private
     implementation.
    
    
    
    
    
   
      In addition
    
    
    

         to
     providing
     the
  
          
        implemented
    
    
    
 
       
     SLF4J API, the
    
     Log4J
 
       
     and
  
      
  
       Jakarta
     Commons
    
    
     Logging
     APIs
      
    
          are
  
     
      provided
    
    
     with implementations
    
    
 
    
       
 
        on
     top
    
     of the SLF4J
    
    
     API.
  </description>
  <documentation>
    http://sling.apache.org/site/logging.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    108251
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling OSGi LogService Implementation'/>
    <p n='symbolicname' v='org.apache.sling.commons.log'/>
    <p n='version' t='version' v='2.0.6'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.logging'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.log4j'/>
    <p n='uses' v='org.slf4j'/>
    <p n='version' t='version' v='1.2.15'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.slf4j'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.5.0
  </require>
</resource>
<resource id='org.apache.sling.commons.log/2.0.2.incubator' presentationname='Sling - OSGi LogService Implementation' symbolicname='org.apache.sling.commons.log' uri='../org/apache/sling/org.apache.sling.commons.log/2.0.2-incubator/org.apache.sling.commons.log-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Implementation of the OSGi Compendium Log Service using SLF4J
    
    
    
    
    
    
    
    
    
    
    
       
         on
     top
     of a
     private
     implementation.
    
    
    
    
    
   
      In addition
    
    
    

         to
     providing
     the
  
          
        implemented
    
    
    
 
       
     SLF4J API, the
    
     Log4J
 
       
     and
  
      
  
       Jakarta
     Commons
    
    
     Logging
     APIs
      
    
          are
  
     
      provided
    
    
     with implementations
    
    
 
    
       
 
        on
     top
    
     of the SLF4J
    
    
     API.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    93257
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - OSGi LogService Implementation'/>
    <p n='symbolicname' v='org.apache.sling.commons.log'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.log4j'/>
    <p n='uses' v='org.slf4j'/>
    <p n='version' t='version' v='1.2.15'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.slf4j'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.logging'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=1.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging ;version=1.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=1.2.15))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j ;version=1.2.15
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.5.2
  </require>
</resource>
<resource id='org.apache.sling.commons.log/2.0.4.incubator' presentationname='Apache Sling OSGi LogService Implementation' symbolicname='org.apache.sling.commons.log' uri='../org/apache/sling/org.apache.sling.commons.log/2.0.4-incubator/org.apache.sling.commons.log-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    Implementation of the OSGi Compendium Log Service using SLF4J
    
    
    
    
    
    
    
    
    
    
    
       
         on
     top
     of a
     private
     implementation.
    
    
    
    
    
   
      In addition
    
    
    

         to
     providing
     the
  
          
        implemented
    
    
    
 
       
     SLF4J API, the
    
     Log4J
 
       
     and
  
      
  
       Jakarta
     Commons
    
    
     Logging
     APIs
      
    
          are
  
     
      provided
    
    
     with implementations
    
    
 
    
       
 
        on
     top
    
     of the SLF4J
    
    
     API.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    94753
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling OSGi LogService Implementation'/>
    <p n='symbolicname' v='org.apache.sling.commons.log'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.log4j'/>
    <p n='uses' v='org.slf4j'/>
    <p n='version' t='version' v='1.2.15'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.log'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.3.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.slf4j'/>
    <p n='version' t='version' v='1.5.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.commons.logging'/>
    <p n='version' t='version' v='1.1.1'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.cm'/>
    <p n='uses' v='org.osgi.framework'/>
    <p n='version' t='version' v='1.2.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=1.1.1))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging ;version=1.1.1
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.log4j)(version&gt;=1.2.15))' multiple='false' name='package' optional='false'>
    Import package org.apache.log4j ;version=1.2.15
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=1.5.2))' multiple='false' name='package' optional='false'>
    Import package org.slf4j ;version=1.5.2
  </require>
</resource>
<resource id='org.apache.sling.httpauth/2.0.4.incubator' presentationname='Apache Sling HTTP Header Authentication' symbolicname='org.apache.sling.httpauth' uri='../org/apache/sling/org.apache.sling.httpauth/2.0.4-incubator/org.apache.sling.httpauth-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    Bundle implementing Basic HTTP Header authentication with login
    
    
    
    
    
    
    
    
    
    
    
       
         and
     logout
    
     support
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    32257
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling HTTP Header Authentication'/>
    <p n='symbolicname' v='org.apache.sling.httpauth'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.engine.auth)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.engine.auth ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.httpauth/2.0.2.incubator' presentationname='Sling - HTTP Header Authentication' symbolicname='org.apache.sling.httpauth' uri='../org/apache/sling/org.apache.sling.httpauth/2.0.2-incubator/org.apache.sling.httpauth-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Bundle implementing Basic HTTP Header authentication with login
    
    
    
    
    
    
    
    
    
    
    
       
         and
     logout
    
     support
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    31040
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - HTTP Header Authentication'/>
    <p n='symbolicname' v='org.apache.sling.httpauth'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.engine.auth)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.engine.auth ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.scripting.jsp/2.0.2.incubator' presentationname='Sling - Scripting - JSP Support' symbolicname='org.apache.sling.scripting.jsp' uri='../org/apache/sling/org.apache.sling.scripting.jsp/2.0.2-incubator/org.apache.sling.scripting.jsp-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Support for JSP scripting
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2181237
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Scripting - JSP Support'/>
    <p n='symbolicname' v='org.apache.sling.scripting.jsp'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.jsp.tagext'/>
    <p n='uses' v='javax.servlet.jsp'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.scripting.jsp.jasper.runtime'/>
    <p n='uses' v='javax.servlet.http,javax.servlet.jsp.tagext,javax.servlet.jsp.el,javax.servlet.jsp,javax.naming,javax.servlet,javax.el'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.jsp.el'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.servlet.jsp,javax.el'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.jsp'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.servlet.jsp.tagext,javax.servlet.jsp.el,javax.el'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.el'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.scripting.jsp.util'/>
    <p n='uses' v='javax.servlet,org.slf4j,org.apache.sling.api.wrappers,javax.servlet.jsp,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.el)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.el ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.script)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.script
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.el)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp.el ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.tagext)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp.tagext ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.scripting)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.scripting ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.wrappers)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.wrappers ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.classloader)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.classloader ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.jsp.jasper.runtime)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.jsp.jasper.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.jsp.util)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.jsp.util ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.sling.scripting.jsp/2.0.6.incubator' presentationname='Apache Sling Scripting JSP Support' symbolicname='org.apache.sling.scripting.jsp' uri='../org/apache/sling/org.apache.sling.scripting.jsp/2.0.6-incubator/org.apache.sling.scripting.jsp-2.0.6-incubator.jar' version='2.0.6.incubator'>
  <description>
    Support for JSP scripting
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    2169826
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Scripting JSP Support'/>
    <p n='symbolicname' v='org.apache.sling.scripting.jsp'/>
    <p n='version' t='version' v='2.0.6.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.jsp.tagext'/>
    <p n='uses' v='javax.servlet.jsp'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.scripting.jsp.jasper.runtime'/>
    <p n='uses' v='javax.servlet.http,javax.servlet.jsp.tagext,javax.servlet.jsp.el,javax.servlet.jsp,javax.naming,javax.servlet,javax.el'/>
    <p n='version' t='version' v='2.0.6.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.jsp.el'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.servlet.jsp,javax.el'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.servlet.jsp'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,javax.servlet.jsp.tagext,javax.servlet.jsp.el,javax.el'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.el'/>
    <p n='version' t='version' v='2.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.scripting.jsp.util'/>
    <p n='uses' v='javax.servlet,org.slf4j,org.apache.sling.api.wrappers,javax.servlet.jsp,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.6.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.el)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.el ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.script)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.script
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.el)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp.el ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.tagext)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp.tagext ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.scripting)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.scripting ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.wrappers)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.wrappers ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.classloader)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.classloader ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.jsp.jasper.runtime)(version&gt;=2.0.6.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.jsp.jasper.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.6.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.jsp.util)(version&gt;=2.0.6.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.jsp.util ;version=2.0.6.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.sling.engine/2.0.2.incubator' presentationname='Sling - Engine Implementation' symbolicname='org.apache.sling.engine' uri='../org/apache/sling/org.apache.sling.engine/2.0.2-incubator/org.apache.sling.engine-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Bundle implementing the core of Sling.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    158923
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Engine Implementation'/>
    <p n='symbolicname' v='org.apache.sling.engine'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.engine'/>
    <p n='uses' v='javax.servlet'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.engine.servlets'/>
    <p n='uses' v='javax.servlet,org.osgi.framework,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.engine.auth'/>
    <p n='uses' v='javax.servlet.http,javax.jcr'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.portlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.portlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.iterators)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.iterators
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.io.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.io.output
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.request)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.request ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.wrappers)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.wrappers ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.mime)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.mime ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.engine)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.engine ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.engine.auth)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.engine.auth ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.engine.servlets)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.engine.servlets ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.http
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.engine/2.0.4.incubator' presentationname='Apache Sling Engine Implementation' symbolicname='org.apache.sling.engine' uri='../org/apache/sling/org.apache.sling.engine/2.0.4-incubator/org.apache.sling.engine-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    Bundle implementing the core of Sling.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    167392
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Engine Implementation'/>
    <p n='symbolicname' v='org.apache.sling.engine'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.engine'/>
    <p n='uses' v='javax.servlet.http,javax.servlet'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.engine.servlets'/>
    <p n='uses' v='javax.servlet,org.osgi.framework,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.engine.auth'/>
    <p n='uses' v='javax.servlet.http,javax.jcr,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.portlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.portlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.iterators)(version&gt;=3.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.iterators ;version=3.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.io.output)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.io.output
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.request)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.request ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.wrappers)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.wrappers ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.mime)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.mime ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.engine)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.engine ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.engine.auth)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.engine.auth ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.engine.servlets)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.engine.servlets ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.http
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.useradmin)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.useradmin
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.jcr.base/2.0.4.incubator' presentationname='Apache Sling JCR Base Bundle' symbolicname='org.apache.sling.jcr.base' uri='../org/apache/sling/org.apache.sling.jcr.base/2.0.4-incubator/org.apache.sling.jcr.base-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    The JCR base bundle provides JCR utility classes
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    272230
  </size>
  <category id='sling'/>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling JCR Base Bundle'/>
    <p n='symbolicname' v='org.apache.sling.jcr.base'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.jcr.base'/>
    <p n='uses' v='org.osgi.framework,javax.jcr.nodetype,org.osgi.service.component,javax.jcr,org.apache.sling.jcr.api,org.osgi.service.log,org.slf4j,org.apache.jackrabbit.api,org.apache.sling.jcr.base.util'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.jcr.base.util'/>
    <p n='uses' v='javax.jcr,org.apache.jackrabbit.api.security.principal,javax.naming,org.apache.jackrabbit.api.security.user,org.slf4j,org.apache.jackrabbit.api.jsr283.security,org.apache.jackrabbit.api'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.security.principal)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.security.principal
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.security.user)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.security.user ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.repository)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.repository
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.xml)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.xml
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.base)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.base ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.base.util)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.base.util ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.sling.jcr.base/2.0.2.incubator' presentationname='Sling - JCR Base Bundle' symbolicname='org.apache.sling.jcr.base' uri='../org/apache/sling/org.apache.sling.jcr.base/2.0.2-incubator/org.apache.sling.jcr.base-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    The JCR base bundle provides JCR utility classes
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    264318
  </size>
  <category id='sling'/>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - JCR Base Bundle'/>
    <p n='symbolicname' v='org.apache.sling.jcr.base'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.jcr.base'/>
    <p n='uses' v='org.osgi.framework,javax.jcr.nodetype,org.osgi.service.component,javax.jcr,org.apache.sling.jcr.api,org.osgi.service.log,org.slf4j,org.apache.jackrabbit.api,org.apache.sling.jcr.base.util'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.jcr.base.util'/>
    <p n='uses' v='javax.naming,org.slf4j,javax.jcr'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.commons.repository)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.commons.repository
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.base)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.base ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.base.util)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.base.util ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.sling.extensions.apt.servlet/2.0.2.incubator' presentationname='Sling - APT servlet' symbolicname='org.apache.sling.extensions.apt.servlet' uri='../org/apache/sling/org.apache.sling.extensions.apt.servlet/2.0.2-incubator/org.apache.sling.extensions.apt.servlet-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Servlet for *.apt requests, uses the apt-parser to convert
    
    
    
    
    
    
    
    
    
    
    
     *.apt
     files
     to
     HTML.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11299
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - APT servlet'/>
    <p n='symbolicname' v='org.apache.sling.extensions.apt.servlet'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.apt.servlet'/>
    <p n='uses' v='org.apache.sling.api.servlets,javax.servlet,org.apache.sling.api.resource,org.apache.sling.apt.parser,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.apt.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.apt.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.apt.servlet)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.apt.servlet ;version=2.0.2.incubator
  </require>
</resource>
<resource id='org.apache.sling.jcr.ocm/2.0.4.incubator' presentationname='Apache Sling Object Content Mapping' symbolicname='org.apache.sling.jcr.ocm' uri='../org/apache/sling/org.apache.sling.jcr.ocm/2.0.4-incubator/org.apache.sling.jcr.ocm-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    This bundle provides Object Content Mapping support for   
    
    
    
    
    
    
    
    
    
    
    
       
      resources
    
     loaded
     from
     a
     JCR repositories.
    
    

        

         This
  
       support
    
    
    
 
        is
            implemented
    
     as
    
  
       an AdapterFactory
    
    
 
       
     for
     Resource
    
 
        objects.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    640512
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Object Content Mapping'/>
    <p n='symbolicname' v='org.apache.sling.jcr.ocm'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.ocm.version'/>
    <p n='uses' v='javax.jcr.version,javax.jcr,org.apache.jackrabbit.ocm.exception'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.ocm.manager.collectionconverter.impl'/>
    <p n='uses' v='javax.jcr.lock,org.apache.jackrabbit.ocm.mapper,org.apache.commons.logging,org.apache.jackrabbit.ocm.manager.atomictypeconverter,javax.jcr.nodetype,javax.jcr,javax.jcr.query,javax.jcr.version,org.apache.jackrabbit.ocm.exception,org.apache.jackrabbit.ocm.manager.collectionconverter'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.ocm.mapper'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.jcr.ocm'/>
    <p n='uses' v='org.apache.jackrabbit.ocm.manager.collectionconverter.impl,org.apache.jackrabbit.ocm.manager,javax.jcr,org.apache.jackrabbit.ocm.manager.collectionconverter'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.ocm.manager.atomictypeconverter'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.ocm.query'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.ocm.manager'/>
    <p n='uses' v='org.apache.jackrabbit.ocm.version,javax.jcr.version,org.apache.jackrabbit.ocm.query,javax.jcr,org.apache.jackrabbit.ocm.exception'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.ocm.exception'/>
    <p n='uses' v='javax.jcr.query'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.ocm.manager.collectionconverter'/>
    <p n='uses' v='org.apache.jackrabbit.ocm.manager.collectionconverter.impl,javax.jcr,org.apache.jackrabbit.ocm.exception'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.comparators)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.comparators
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.keyvalue)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.keyvalue
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.list)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.list
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.set)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.set
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.lang
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.ocm.exception)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.ocm.exception ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.ocm.manager)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.ocm.manager ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.ocm.manager.atomictypeconverter)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.ocm.manager.atomictypeconverter
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.ocm.manager.collectionconverter)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.ocm.manager.collectionconverter
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.ocm.manager.collectionconverter.impl)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.ocm.manager.collectionconverter.impl
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.ocm.mapper)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.ocm.mapper ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.ocm.query)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.ocm.query ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.ocm.version)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.ocm.version ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.value)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.value ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.adapter)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.adapter ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.ocm)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.ocm ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.event
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.jcr.ocm/2.0.2.incubator' presentationname='Sling - Object Content Mapping' symbolicname='org.apache.sling.jcr.ocm' uri='../org/apache/sling/org.apache.sling.jcr.ocm/2.0.2-incubator/org.apache.sling.jcr.ocm-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    This bundle provides Object Content Mapping support for   
    
    
    
    
    
    
    
    
    
    
    
       
      resources
    
     loaded
     from
     a
     JCR repositories.
    
    

        

         This
  
       support
    
    
    
 
        is
            implemented
    
     as
    
  
       an AdapterFactory
    
    
 
       
     for
     Resource
    
 
        objects.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    627684
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Object Content Mapping'/>
    <p n='symbolicname' v='org.apache.sling.jcr.ocm'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.ocm.version'/>
    <p n='uses' v='javax.jcr.version,javax.jcr,org.apache.jackrabbit.ocm.exception'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.ocm.manager.collectionconverter.impl'/>
    <p n='uses' v='javax.jcr.lock,org.apache.jackrabbit.ocm.mapper,org.apache.commons.logging,org.apache.jackrabbit.ocm.manager.atomictypeconverter,javax.jcr.nodetype,javax.jcr,javax.jcr.query,javax.jcr.version,org.apache.jackrabbit.ocm.exception,org.apache.jackrabbit.ocm.manager.collectionconverter'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.ocm.mapper'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.jcr.ocm'/>
    <p n='uses' v='org.apache.jackrabbit.ocm.manager.collectionconverter.impl,org.apache.jackrabbit.ocm.manager,javax.jcr'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.ocm.manager.atomictypeconverter'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.ocm.query'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.ocm.manager'/>
    <p n='uses' v='org.apache.jackrabbit.ocm.version,javax.jcr.version,org.apache.jackrabbit.ocm.query,javax.jcr,org.apache.jackrabbit.ocm.exception'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.ocm.exception'/>
    <p n='uses' v='javax.jcr.query'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.ocm.manager.collectionconverter'/>
    <p n='uses' v='org.apache.jackrabbit.ocm.manager.collectionconverter.impl,javax.jcr,org.apache.jackrabbit.ocm.exception'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.comparators)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.comparators
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.keyvalue)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.keyvalue
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.list)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.list
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.set)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.set
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.ocm.exception)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.ocm.exception ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.ocm.manager)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.ocm.manager ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.ocm.manager.atomictypeconverter)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.ocm.manager.atomictypeconverter
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.ocm.manager.collectionconverter)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.ocm.manager.collectionconverter
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.ocm.manager.collectionconverter.impl)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.ocm.manager.collectionconverter.impl
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.ocm.mapper)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.ocm.mapper ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.ocm.query)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.ocm.query ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.ocm.version)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.ocm.version ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.value)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.value
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.adapter)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.adapter ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.ocm)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.ocm ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.event
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.samples.webloader.ui/2.0.2.incubator' presentationname='Sling - Webloader User Interface' symbolicname='org.apache.sling.samples.webloader.ui' uri='../org/apache/sling/samples/org.apache.sling.samples.webloader.ui/2.0.2-incubator/org.apache.sling.samples.webloader.ui-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Simple user interface for the Sling Webloader service.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11553
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Webloader User Interface'/>
    <p n='symbolicname' v='org.apache.sling.samples.webloader.ui'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
</resource>
<resource id='org.apache.sling.samples.simple-demo/2.0.2.incubator' presentationname='Sling - Sample Sling Application' symbolicname='org.apache.sling.samples.simple-demo' uri='../org/apache/sling/samples/org.apache.sling.samples.simple-demo/2.0.2-incubator/org.apache.sling.samples.simple-demo-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    This bundle provides a simple Sling Application to show some
    
    
    
    
    
    
    
    
    
    
    
     of
         
       the
     features
    
     and functionalities
    
    
  
      
    
   
      of Sling,
  
      
  
    
       such
     as
     node type
   
          
       definition,
    
    
   
    
     
     content mapping,
    
    
 
   
         running
  
   
        JSPs
 
        off the
 
     
       repository
     and
 
          
         the bundle.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26653
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Sample Sling Application'/>
    <p n='symbolicname' v='org.apache.sling.samples.simple-demo'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.sample'/>
    <p n='uses' v='org.apache.sling.api.servlets,javax.servlet,org.apache.sling.api.resource,org.apache.sling.jcr.ocm,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jsp.apps.sling.sample'/>
    <p n='uses' v='javax.servlet.http,org.apache.sling.api.resource,javax.servlet.jsp.tagext,javax.servlet.jsp,org.apache.sling.api.scripting,javax.jcr,javax.servlet,org.apache.sling.scripting.jsp.jasper.runtime,org.slf4j,org.apache.sling.scripting.jsp.taglib,org.apache.sling.sample,javax.el,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.el)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.el ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.tagext)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp.tagext ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jsp.apps.sling.sample)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.jsp.apps.sling.sample ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.scripting)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.scripting ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.ocm)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.ocm ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.sample)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.sample ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.jsp.jasper.runtime)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.jsp.jasper.runtime
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.jsp.taglib)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.jsp.taglib ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.samples.webloader.service/2.0.2.incubator' presentationname='Sling - Webloader Service' symbolicname='org.apache.sling.samples.webloader.service' uri='../org/apache/sling/samples/org.apache.sling.samples.webloader.service/2.0.2-incubator/org.apache.sling.samples.webloader.service-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Sample OSGi service that retrieves documents from the Web using
    
    
    
    
    
    
    
    
    
    
    
     a Google
    
        
        search,
    
     and
     stores
     them
    
 
        into

         the
     repository.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    22499
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Webloader Service'/>
    <p n='symbolicname' v='org.apache.sling.samples.webloader.service'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.samples.webloader'/>
    <p n='uses' v='org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.text)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.text
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.text.html)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.text.html
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.mime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.mime
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.samples.webloader)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.samples.webloader ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.scripting.javascript/2.0.2.incubator' presentationname='Sling - Scripting - JavaScript Support' symbolicname='org.apache.sling.scripting.javascript' uri='../org/apache/sling/org.apache.sling.scripting.javascript/2.0.2-incubator/org.apache.sling.scripting.javascript-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Support for JavaScript scripting
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    807905
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Scripting - JavaScript Support'/>
    <p n='symbolicname' v='org.apache.sling.scripting.javascript'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.script)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.script
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.border)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.border
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.event
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.filechooser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.filechooser
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.table)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.table
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.text)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.text
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.tree
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.scripting)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.scripting ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json.jcr)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json.jcr ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.sling.scripting.javascript/2.0.4.incubator' presentationname='Apache Sling Scripting JavaScript Support' symbolicname='org.apache.sling.scripting.javascript' uri='../org/apache/sling/org.apache.sling.scripting.javascript/2.0.4-incubator/org.apache.sling.scripting.javascript-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    Support for JavaScript scripting
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    814278
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Scripting JavaScript Support'/>
    <p n='symbolicname' v='org.apache.sling.scripting.javascript'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.scripting.javascript'/>
    <p n='uses' v='org.mozilla.javascript'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.mozilla.javascript'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.script)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.script
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.border)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.border
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.event
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.filechooser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.filechooser
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.table)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.table
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.text)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.text
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.tree)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.tree
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.scripting)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.scripting ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json.jcr)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json.jcr ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.mozilla.javascript)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.mozilla.javascript
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.sling.commons.json/2.0.2.incubator' presentationname='Sling - Sling JSON Library' symbolicname='org.apache.sling.commons.json' uri='../org/apache/sling/org.apache.sling.commons.json/2.0.2-incubator/org.apache.sling.commons.json-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Sling JSON Library
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    44420
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Sling JSON Library'/>
    <p n='symbolicname' v='org.apache.sling.commons.json'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.json.util'/>
    <p n='uses' v='org.apache.sling.commons.json'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.json.http'/>
    <p n='uses' v='org.apache.sling.commons.json'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.json.xml'/>
    <p n='uses' v='org.apache.sling.commons.json'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.json'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.json.jcr'/>
    <p n='uses' v='org.apache.sling.commons.json,javax.jcr.nodetype,org.apache.sling.commons.json.io,javax.jcr'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.json.io'/>
    <p n='uses' v='org.apache.sling.commons.json'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json.http)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json.http ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json.io)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json.io ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json.jcr)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json.jcr ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json.util)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json.util ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json.xml)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json.xml ;version=2.0.2.incubator
  </require>
</resource>
<resource id='org.apache.sling.commons.json/2.0.4.incubator' presentationname='Apache Sling JSON Library' symbolicname='org.apache.sling.commons.json' uri='../org/apache/sling/org.apache.sling.commons.json/2.0.4-incubator/org.apache.sling.commons.json-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    Apache Sling JSON Library
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    48696
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling JSON Library'/>
    <p n='symbolicname' v='org.apache.sling.commons.json'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.json.util'/>
    <p n='uses' v='org.apache.sling.commons.json'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.json.http'/>
    <p n='uses' v='org.apache.sling.commons.json'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.json.xml'/>
    <p n='uses' v='org.apache.sling.commons.json'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.json'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.json.jcr'/>
    <p n='uses' v='org.apache.sling.commons.json,javax.jcr.nodetype,org.apache.sling.commons.json.io,javax.jcr'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.json.io'/>
    <p n='uses' v='org.apache.sling.commons.json'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json.http)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json.http ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json.io)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json.io ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json.jcr)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json.jcr ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json.util)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json.util ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json.xml)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json.xml ;version=2.0.4.incubator
  </require>
</resource>
<resource id='org.apache.sling.jcr.classloader/2.0.2.incubator' presentationname='Sling - Repository ClassLoader' symbolicname='org.apache.sling.jcr.classloader' uri='../org/apache/sling/org.apache.sling.jcr.classloader/2.0.2-incubator/org.apache.sling.jcr.classloader-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Provides Support for delegate class loaders built dynamically.
    
    
    
    
    
    
    
    
    
    
    
       
         Delegate
    
     class
     loaders
    
     supported
    
    
     are
    
    
     generic
  
       ClassLoader,
    
    
  
      
 
        OSGi  
     
         bundles
  
      
     and
     repository
    
    

   
          class
     loader.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    160163
  </size>
  <category id='sling'/>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Repository ClassLoader'/>
    <p n='symbolicname' v='org.apache.sling.jcr.classloader'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.net'/>
    <p n='uses' v='org.slf4j,javax.jcr,org.apache.jackrabbit.classloader'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.jcr.classloader'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.classloader'/>
    <p n='uses' v='org.apache.jackrabbit.net,javax.jcr.observation,javax.jcr.nodetype,javax.jcr,org.slf4j,org.apache.jackrabbit.api'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.bidimap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.bidimap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.classloader)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.classloader ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.net)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.net ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.classloader)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.classloader ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.jcr.classloader/2.0.4.incubator' presentationname='Apache Sling Repository ClassLoader' symbolicname='org.apache.sling.jcr.classloader' uri='../org/apache/sling/org.apache.sling.jcr.classloader/2.0.4-incubator/org.apache.sling.jcr.classloader-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    Provides Support for delegate class loaders built dynamically.
    
    
    
    
    
    
    
    
    
    
    
       
         Delegate
    
     class
     loaders
    
     supported
    
    
     are
    
    
     generic
  
       ClassLoader,
    
    
  
      
 
        OSGi  
     
         bundles
  
      
     and
     repository
    
    

   
          class
     loader.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    159815
  </size>
  <category id='sling'/>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Repository ClassLoader'/>
    <p n='symbolicname' v='org.apache.sling.jcr.classloader'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.net'/>
    <p n='uses' v='org.slf4j,javax.jcr,org.apache.jackrabbit.classloader'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.jcr.classloader'/>
    <p n='uses' v='javax.jcr'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.classloader'/>
    <p n='uses' v='org.apache.jackrabbit.net,javax.jcr.observation,javax.jcr.nodetype,javax.jcr,org.slf4j,org.apache.jackrabbit.api'/>
    <p n='version' t='version' v='1.4.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections)(version&gt;=3.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections ;version=3.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.bidimap)(version&gt;=3.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.bidimap ;version=3.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.classloader)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.classloader ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.net)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.net ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.classloader)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.classloader ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.bundleresource.impl/2.0.2.incubator' presentationname='Sling - Bundle Resource Provider' symbolicname='org.apache.sling.bundleresource.impl' uri='../org/apache/sling/org.apache.sling.bundleresource.impl/2.0.2-incubator/org.apache.sling.bundleresource.impl-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Provides a ResourceProvider implementation supporting bundle
    
    
    
    
    
    
    
    
    
    
    
       
         based
    
     resources.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    20807
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Bundle Resource Provider'/>
    <p n='symbolicname' v='org.apache.sling.bundleresource.impl'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.adapter)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.adapter ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.bundleresource.impl/2.0.4.incubator' presentationname='Apache Sling Bundle Resource Provider' symbolicname='org.apache.sling.bundleresource.impl' uri='../org/apache/sling/org.apache.sling.bundleresource.impl/2.0.4-incubator/org.apache.sling.bundleresource.impl-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    Provides a ResourceProvider implementation supporting bundle
    
    
    
    
    
    
    
    
    
    
    
       
         based
    
     resources.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    36698
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Bundle Resource Provider'/>
    <p n='symbolicname' v='org.apache.sling.bundleresource.impl'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.adapter)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.adapter ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.extensions.apt.parser/2.0.2.incubator' presentationname='Sling - APT parser' symbolicname='org.apache.sling.extensions.apt.parser' uri='../org/apache/sling/org.apache.sling.extensions.apt.parser/2.0.2-incubator/org.apache.sling.extensions.apt.parser-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Parser for the Sling variant of the APT (Almost Plain Text)
    
    
    
    
    
    
    
    
    
    
    
       
      	structured
    
     text
     format.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    307186
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - APT parser'/>
    <p n='symbolicname' v='org.apache.sling.extensions.apt.parser'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.apt.parser'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.swing.text)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.text
  </require>
  <require extend='false' filter='(&amp;(package=javax.swing.text.html)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.swing.text.html
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.apt.parser)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.apt.parser ;version=2.0.2.incubator
  </require>
</resource>
<resource id='org.apache.sling.openidauth/0.9.0.incubator' presentationname='Apache Sling OpenID Authentication' symbolicname='org.apache.sling.openidauth' uri='../org/apache/sling/org.apache.sling.openidauth/0.9.0-incubator/org.apache.sling.openidauth-0.9.0-incubator.jar' version='0.9.0.incubator'>
  <description>
    Bundle implementing OpenID authentication with login      
    
    
    
    
    
    
    
    
    
    
    
      and
     logout
     support
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    297466
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling OpenID Authentication'/>
    <p n='symbolicname' v='org.apache.sling.openidauth'/>
    <p n='version' t='version' v='0.9.0.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='com.dyuproject.openid'/>
    <p n='uses' v='javax.servlet.http,javax.crypto,javax.servlet,javax.crypto.spec'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.openidauth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=com.dyuproject.openid)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package com.dyuproject.openid
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.crypto
  </require>
  <require extend='false' filter='(&amp;(package=javax.crypto.spec)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.crypto.spec
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='true'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.engine.auth)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='true'>
    Import package org.apache.sling.engine.auth ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.jackrabbit.server.security)(version&gt;=2.0.3.incubator-SNAPSHOT))' multiple='false' name='package' optional='true'>
    Import package org.apache.sling.jcr.jackrabbit.server.security
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.3.incubator-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.openidauth)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.sling.openidauth
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.scripting.api/2.0.2.incubator' presentationname='Sling - Scripting Implementation API' symbolicname='org.apache.sling.scripting.api' uri='../org/apache/sling/org.apache.sling.scripting.api/2.0.2-incubator/org.apache.sling.scripting.api-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    This bundle provides the internal API to implement scripting.
    
    
    
    
    
    
    
    
    
    
    
     As
     such
         
       it
     bundles
     the
     Java

         Scripting
    
    

         API
 
        provided

    
        
    
    
     by Apache

         BSF.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26873
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Scripting Implementation API'/>
    <p n='symbolicname' v='org.apache.sling.scripting.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.script'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.scripting.api'/>
    <p n='uses' v='javax.script'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.script)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.script
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.api ;version=2.0.2.incubator
  </require>
</resource>
<resource id='org.apache.sling.samples.path-based.rtp/2.0.2.incubator' presentationname='Sling - Sample Path Based Resource Type Provider' symbolicname='org.apache.sling.samples.path-based.rtp' uri='../org/apache/sling/org.apache.sling.samples.path-based.rtp/2.0.2-incubator/org.apache.sling.samples.path-based.rtp-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Provides a configurable path-based sample resource type provider
    
    
    
    
    
    
    
    
    
    
    
       
         for
     resources
    
     which
     do
     not
 
        have
    
     an explicit
  
      
  
       one.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14338
  </size>
  <category id='sling'/>
  <category id='jcr'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Sample Path Based Resource Type Provider'/>
    <p n='symbolicname' v='org.apache.sling.samples.path-based.rtp'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.jcr.jackrabbit.accessmanager/2.0.2.incubator' presentationname='Apache Sling Jackrabbit JSR-283 Access Control Manager Support' symbolicname='org.apache.sling.jcr.jackrabbit.accessmanager' uri='../org/apache/sling/org.apache.sling.jcr.jackrabbit.accessmanager/2.0.2-incubator/org.apache.sling.jcr.jackrabbit.accessmanager-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Provides SlingPostOperations for the Jackrabbit JSR-283 Access
    
    
    
    
    
    
    
    
    
    
    
     Control
    
     Manager.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    33218
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Jackrabbit JSR-283 Access Control Manager Support'/>
    <p n='symbolicname' v='org.apache.sling.jcr.jackrabbit.accessmanager'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.jcr.jackrabbit.accessmanager'/>
    <p n='uses' v='org.apache.jackrabbit.api.security.principal,org.apache.jackrabbit.api.jsr283.security,javax.jcr,org.apache.sling.jcr.base.util'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.jcr.jackrabbit.accessmanager.post'/>
    <p n='uses' v='javax.servlet.http,org.apache.sling.servlets.post,org.apache.sling.api.resource,org.apache.sling.commons.json,org.apache.sling.api.wrappers,javax.jcr,org.apache.sling.api.servlets,javax.servlet,org.apache.jackrabbit.api.security.user,org.slf4j,org.apache.jackrabbit.api.jsr283.security,org.apache.sling.jcr.base.util,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.security.principal)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.security.principal
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.security.user)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.security.user ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.wrappers)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.wrappers ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.json)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.json ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.base.util)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.base.util ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.jackrabbit.accessmanager)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.jackrabbit.accessmanager
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.jackrabbit.accessmanager.post)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.jackrabbit.accessmanager.post
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.servlets.post)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.servlets.post ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.extensions.threaddump/0.1.2.incubator' presentationname='Apache Sling Thread Dumper' symbolicname='org.apache.sling.extensions.threaddump' uri='../org/apache/sling/org.apache.sling.extensions.threaddump/0.1.2-incubator/org.apache.sling.extensions.threaddump-0.1.2-incubator.jar' version='0.1.2.incubator'>
  <description>
    Plugin providing plugins to the Felix Shell and Web Console
    
    
    
    
    
    
    
    
    
    
    
     to
         
       have
     the
     current
     threads
    

         with

         the
   
      stack
 
        traces
 
     
       dumped.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16493
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Thread Dumper'/>
    <p n='symbolicname' v='org.apache.sling.extensions.threaddump'/>
    <p n='version' t='version' v='0.1.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.shell)(version&gt;=1.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.shell ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.webconsole)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.felix.webconsole
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.jcr.jackrabbit.server/2.0.3.incubator-SNAPSHOT' presentationname='Apache Sling Jackrabbit Embedded Repository' symbolicname='org.apache.sling.jcr.jackrabbit.server' uri='../org/apache/sling/org.apache.sling.jcr.jackrabbit.server/2.0.4-incubator/org.apache.sling.jcr.jackrabbit.server-2.0.4-incubator.jar' version='2.0.3.incubator-SNAPSHOT'>
  <description>
    Bundle providing support to embed Jackrabbit Repository instances
    
    
    
    
    
    
    
    
    
    
    
     and
     publish
     via
     RMI
     and/or
     JNDI
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    11500937
  </size>
  <category id='sling'/>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Jackrabbit Embedded Repository'/>
    <p n='symbolicname' v='org.apache.sling.jcr.jackrabbit.server'/>
    <p n='version' t='version' v='2.0.3.incubator-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.jcr.jackrabbit.server.security'/>
    <p n='uses' v='javax.jcr,javax.security.auth.callback,javax.security.auth.login,javax.security.auth'/>
    <p n='version' t='version' v='2.0.3.incubator-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jackrabbit.core.security.principal'/>
    <p n='uses' v='javax.jcr,org.slf4j,org.apache.commons.collections.iterators,org.apache.jackrabbit.api.security.user,org.apache.commons.collections.map,javax.jcr.observation,org.apache.jackrabbit.api.security.principal,org.apache.commons.collections.set'/>
    <p n='version' t='version' v='2.0.3.incubator-SNAPSHOT'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.jcr.jackrabbit.server.security.accessmanager'/>
    <p n='uses' v='javax.jcr,javax.security.auth'/>
    <p n='version' t='version' v='2.0.3.incubator-SNAPSHOT'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.directory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.directory
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.buffer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.buffer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.iterators)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.iterators
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.list)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.list
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.map)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.map
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.set)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.set
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283 ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283.nodetype)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283.nodetype ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283.retention)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283.retention ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283.security)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283.security ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.observation)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.observation ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.security.principal)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.security.principal
    
    
    
    
    
    
    
    
    
    
    
     ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.security.user)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.security.user ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.base)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.base ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.jackrabbit.server.security)(version&gt;=2.0.3.incubator-SNAPSHOT))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.jackrabbit.server.security
    
    
    
    
    
    
    
    
    
    
    
     ;version=2.0.3.incubator-SNAPSHOT
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.sling.jcr.jackrabbit.server/2.0.2.incubator' presentationname='Sling - Jackrabbit Embedded Repository' symbolicname='org.apache.sling.jcr.jackrabbit.server' uri='../org/apache/sling/org.apache.sling.jcr.jackrabbit.server/2.0.2-incubator/org.apache.sling.jcr.jackrabbit.server-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Bundle providing support to embed Jackrabbit Repository   
    
    
    
    
    
    
    
    
    
    
    
       
      instances
    
     and
     publish
     via
     RMI
 
        and/or
     JNDI
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    10825608
  </size>
  <category id='sling'/>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Jackrabbit Embedded Repository'/>
    <p n='symbolicname' v='org.apache.sling.jcr.jackrabbit.server'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.util
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.directory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.directory
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.buffer)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.buffer
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.functors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.functors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.iterators)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.iterators
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.list)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.list
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.map)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.map
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.base)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.base ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.sling.commons.threads/2.0.2.incubator' presentationname='Sling - Thread Support' symbolicname='org.apache.sling.commons.threads' uri='../org/apache/sling/org.apache.sling.commons.threads/2.0.2-incubator/org.apache.sling.commons.threads-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Support for thread handling like pooling.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    21478
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Thread Support'/>
    <p n='symbolicname' v='org.apache.sling.commons.threads'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.threads'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.threads)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.threads ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.commons.threads/2.0.4.incubator' presentationname='Apache Sling Thread Support' symbolicname='org.apache.sling.commons.threads' uri='../org/apache/sling/org.apache.sling.commons.threads/2.0.4-incubator/org.apache.sling.commons.threads-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    Support for thread handling like pooling.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    21743
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Thread Support'/>
    <p n='symbolicname' v='org.apache.sling.commons.threads'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.threads'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.threads)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.threads ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.jcr.resource/2.0.2.incubator' presentationname='Sling - Resource Resolver' symbolicname='org.apache.sling.jcr.resource' uri='../org/apache/sling/org.apache.sling.jcr.resource/2.0.2-incubator/org.apache.sling.jcr.resource-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    This bundle provides the JCR based ResourceResolver.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    74001
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Resource Resolver'/>
    <p n='symbolicname' v='org.apache.sling.jcr.resource'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.jcr.resource'/>
    <p n='uses' v='org.apache.sling.api.resource,javax.jcr.query,javax.jcr.nodetype,javax.jcr'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.bidimap)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.bidimap
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.classloader)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.classloader
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.adapter)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.adapter ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.event
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.jcr.resource/2.0.4.incubator' presentationname='Apache Sling Resource Resolver' symbolicname='org.apache.sling.jcr.resource' uri='../org/apache/sling/org.apache.sling.jcr.resource/2.0.4-incubator/org.apache.sling.jcr.resource-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    This bundle provides the JCR based ResourceResolver.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    109494
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Resource Resolver'/>
    <p n='symbolicname' v='org.apache.sling.jcr.resource'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.jcr.resource'/>
    <p n='uses' v='org.apache.sling.api.resource,org.slf4j,javax.jcr.query,javax.jcr.nodetype,javax.jcr'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections)(version&gt;=3.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections ;version=3.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.bidimap)(version&gt;=3.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.bidimap ;version=3.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.webconsole)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.webconsole
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.adapter)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.adapter ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.wrappers)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.wrappers ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.resource)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.resource ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.commons.osgi/2.0.2.incubator' presentationname='Sling - Commons OSGi support' symbolicname='org.apache.sling.commons.osgi' uri='../org/apache/sling/org.apache.sling.commons.osgi/2.0.2-incubator/org.apache.sling.commons.osgi-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Commons OSGi
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    15853
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Commons OSGi support'/>
    <p n='symbolicname' v='org.apache.sling.commons.osgi'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.osgi'/>
    <p n='uses' v='org.osgi.service.event,org.osgi.framework'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.event
  </require>
</resource>
<resource id='org.apache.sling.commons.osgi/2.0.4.incubator' presentationname='Apache Sling Commons OSGi support' symbolicname='org.apache.sling.commons.osgi' uri='../org/apache/sling/org.apache.sling.commons.osgi/2.0.4-incubator/org.apache.sling.commons.osgi-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    Commons OSGi
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16005
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Commons OSGi support'/>
    <p n='symbolicname' v='org.apache.sling.commons.osgi'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.commons.osgi'/>
    <p n='uses' v='org.osgi.service.event,org.osgi.framework'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.event)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.event
  </require>
</resource>
<resource id='org.apache.sling.scripting.core/2.0.2.incubator' presentationname='Sling - Scripting Core implementation' symbolicname='org.apache.sling.scripting.core' uri='../org/apache/sling/org.apache.sling.scripting.core/2.0.2-incubator/org.apache.sling.scripting.core-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Sling Scripting core functionality
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    28617
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Scripting Core implementation'/>
    <p n='symbolicname' v='org.apache.sling.scripting.core'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.scripting.core'/>
    <p n='uses' v='javax.servlet,org.osgi.framework,org.apache.sling.api.request,org.apache.sling.api.scripting,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.script)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.script
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.adapter)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.adapter ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.request)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.request ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.scripting)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.scripting ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.wrappers)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.wrappers ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.core)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.core ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.scripting.core/2.0.4.incubator' presentationname='Apache Sling Scripting Core implementation' symbolicname='org.apache.sling.scripting.core' uri='../org/apache/sling/org.apache.sling.scripting.core/2.0.4-incubator/org.apache.sling.scripting.core-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    Sling Scripting core functionality
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    33870
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Scripting Core implementation'/>
    <p n='symbolicname' v='org.apache.sling.scripting.core'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.scripting.core'/>
    <p n='uses' v='javax.servlet,org.osgi.framework,org.apache.sling.api.request,org.apache.sling.api.scripting,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.script)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.script
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.adapter)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.adapter ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.request)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.request ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.scripting)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.scripting ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.wrappers)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.wrappers ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.mime)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.mime ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.core)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.core ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.jcr.webdav/2.0.6.incubator' presentationname='Apache Sling Simple WebDAV Access to repositories' symbolicname='org.apache.sling.jcr.webdav' uri='../org/apache/sling/org.apache.sling.jcr.webdav/2.0.6-incubator/org.apache.sling.jcr.webdav-2.0.6-incubator.jar' version='2.0.6.incubator'>
  <description>
    Bundle to access JCR repositories over WebDAV
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1812395
  </size>
  <category id='sling'/>
  <category id='jcr'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Simple WebDAV Access to repositories'/>
    <p n='symbolicname' v='org.apache.sling.jcr.webdav'/>
    <p n='version' t='version' v='2.0.6.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.api.jsr283)(version&gt;=1.5.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.api.jsr283 ;version=1.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.mime)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.mime ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.http
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.events)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.events
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ranges)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.ranges
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom.traversal
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.sling.jcr.webdav/2.0.2.incubator' presentationname='Sling - Simple WebDAV Access to repositories' symbolicname='org.apache.sling.jcr.webdav' uri='../org/apache/sling/org.apache.sling.jcr.webdav/2.0.2-incubator/org.apache.sling.jcr.webdav-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Bundle to access JCR repositories over WebDAV
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1741662
  </size>
  <category id='sling'/>
  <category id='jcr'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Simple WebDAV Access to repositories'/>
    <p n='symbolicname' v='org.apache.sling.jcr.webdav'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.lock)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.lock ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.observation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.observation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.query)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.query ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.util)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.util ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.version)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.version ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=javax.transaction.xa)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.transaction.xa
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.datatype)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.datatype
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.namespace)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.namespace
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.transform.sax
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.validation)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package javax.xml.validation
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.commons.collections.map)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.commons.collections.map
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xml.resolver
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.xml.resolver.readers)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.apache.xml.resolver.readers
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.http
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.events)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.w3c.dom.events
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.html)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.w3c.dom.html
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ls)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.w3c.dom.ls
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.ranges)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.w3c.dom.ranges
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom.traversal)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.w3c.dom.traversal
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='true'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.sling.launchpad.test-services/2.0.6.incubator' presentationname='Apache Sling Launchpad Testing Services' symbolicname='org.apache.sling.launchpad.test-services' uri='../org/apache/sling/org.apache.sling.launchpad.test-services/2.0.6-incubator/org.apache.sling.launchpad.test-services-2.0.6-incubator.jar' version='2.0.6.incubator'>
  <description>
    Sling services used by the Launchpad Testing integration tests
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    14288
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Launchpad Testing Services'/>
    <p n='symbolicname' v='org.apache.sling.launchpad.test-services'/>
    <p n='version' t='version' v='2.0.6.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.4.incubator
  </require>
</resource>
<resource id='org.apache.sling.scripting.jsp.taglib/2.0.2.incubator' presentationname='Sling - Scripting - JSP Support, Core Tag Library' symbolicname='org.apache.sling.scripting.jsp.taglib' uri='../org/apache/sling/org.apache.sling.scripting.jsp.taglib/2.0.2-incubator/org.apache.sling.scripting.jsp.taglib-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Core Tag Library for Project Sling JSP support
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    16080
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Scripting - JSP Support, Core Tag Library'/>
    <p n='symbolicname' v='org.apache.sling.scripting.jsp.taglib'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.scripting.jsp.taglib'/>
    <p n='uses' v='org.apache.sling.api.resource,javax.servlet.jsp.tagext,org.apache.sling.api.scripting,javax.jcr,javax.servlet.jsp,org.apache.sling.scripting.jsp.util,javax.servlet,org.slf4j,org.apache.sling.api.request,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.tagext)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp.tagext ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.request)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.request ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.scripting)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.scripting ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.jsp.taglib)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.jsp.taglib ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.jsp.util)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.jsp.util ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.scripting.jsp.taglib/2.0.4.incubator' presentationname='Apache Sling JSP Tag Library' symbolicname='org.apache.sling.scripting.jsp.taglib' uri='../org/apache/sling/org.apache.sling.scripting.jsp.taglib/2.0.4-incubator/org.apache.sling.scripting.jsp.taglib-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    Core Tag Library for Apache Sling JSP support
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    18612
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling JSP Tag Library'/>
    <p n='symbolicname' v='org.apache.sling.scripting.jsp.taglib'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.scripting.jsp.taglib'/>
    <p n='uses' v='org.apache.sling.api.resource,javax.servlet.jsp.tagext,javax.jcr,org.apache.sling.api.scripting,javax.servlet.jsp,org.apache.sling.scripting.jsp.util,javax.servlet,org.slf4j,org.apache.sling.api.request,org.apache.sling.jcr.resource,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.tagext)(version&gt;=2.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp.tagext ;version=2.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.request)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.request ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.scripting)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.scripting ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.jsp.taglib)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.jsp.taglib ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.scripting.jsp.util)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.scripting.jsp.util ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.servlets.post/2.0.2.incubator' presentationname='Sling - Default POST Servlets' symbolicname='org.apache.sling.servlets.post' uri='../org/apache/sling/org.apache.sling.servlets.post/2.0.2-incubator/org.apache.sling.servlets.post-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Provides default POST servlets.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    54022
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Default POST Servlets'/>
    <p n='symbolicname' v='org.apache.sling.servlets.post'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.servlets.post'/>
    <p n='uses' v='javax.servlet.http,org.apache.sling.api.servlets,org.apache.sling.api.resource,org.slf4j,org.apache.sling.api.wrappers,javax.jcr,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.request)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.request ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.wrappers)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.wrappers ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.servlets.post)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.servlets.post ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.servlets.post/2.0.4.incubator' presentationname='Apache Sling Default POST Servlets' symbolicname='org.apache.sling.servlets.post' uri='../org/apache/sling/org.apache.sling.servlets.post/2.0.4-incubator/org.apache.sling.servlets.post-2.0.4-incubator.jar' version='2.0.4.incubator'>
  <description>
    Provides default POST servlets.
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    61803
  </size>
  <category id='sling'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Sling Default POST Servlets'/>
    <p n='symbolicname' v='org.apache.sling.servlets.post'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.sling.servlets.post'/>
    <p n='uses' v='javax.servlet.http,org.apache.sling.api.servlets,org.apache.sling.api.resource,org.slf4j,org.apache.sling.api.wrappers,javax.jcr,org.apache.sling.api'/>
    <p n='version' t='version' v='2.0.4.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.jcr.nodetype)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr.nodetype ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jackrabbit.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jackrabbit.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.request)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.request ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.resource)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.resource ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.servlets)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.servlets ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.api.wrappers)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.api.wrappers ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.commons.osgi)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.commons.osgi ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.servlets.post)(version&gt;=2.0.4.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.servlets.post ;version=2.0.4.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.sling.jcr.jackrabbit.client/2.0.2.incubator' presentationname='Sling - Repository Accessor' symbolicname='org.apache.sling.jcr.jackrabbit.client' uri='../org/apache/sling/org.apache.sling.jcr.jackrabbit.client/2.0.2-incubator/org.apache.sling.jcr.jackrabbit.client-2.0.2-incubator.jar' version='2.0.2.incubator'>
  <description>
    Bundle to access an existing JCR repository from JNDI or through
    
    
    
    
    
    
    
    
    
    
    
       
         RMI
  </description>
  <documentation>
    http://incubator.apache.org/sling
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    17599
  </size>
  <category id='sling'/>
  <category id='jcr'/>
  <category id='jackrabbit'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Sling - Repository Accessor'/>
    <p n='symbolicname' v='org.apache.sling.jcr.jackrabbit.client'/>
    <p n='version' t='version' v='2.0.2.incubator'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.jcr)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.jcr ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.api)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.api ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.base)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.base ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.sling.jcr.base.util)(version&gt;=2.0.2.incubator))' multiple='false' name='package' optional='false'>
    Import package org.apache.sling.jcr.base.util ;version=2.0.2.incubator
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.component)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.component
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log
  </require>
  <require extend='false' filter='(&amp;(package=org.slf4j)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.slf4j
  </require>
</resource>
<resource id='org.apache.felix.ipojo.webconsole/1.4.4' presentationname='Apache Felix iPOJO WebConsole Plugins' symbolicname='org.apache.felix.ipojo.webconsole' uri='../org/apache/felix/org.apache.felix.ipojo.webconsole/1.4.4/org.apache.felix.ipojo.webconsole-1.4.4.jar' version='1.4.4'>
  <description>
    iPOJO plugin for the Apache Felix Web Console. This plugin
    
    
    
    
    
    
    
    
    
    
     allows introspecting
    
    
     an
     iPOJO
     system
     with
     the
  
       Apache
    

        
   
      Felix
   
       Web Console.
  </description>
  <documentation>
    http://felix.apache.org/site/ipojo-webconsole-plugin.html
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    21082
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix iPOJO WebConsole Plugins'/>
    <p n='symbolicname' v='org.apache.felix.ipojo.webconsole'/>
    <p n='version' t='version' v='1.4.4'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.webconsole)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.webconsole ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.dependency)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.dependency ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.metadata)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.metadata
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.architecture)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.architecture
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.cm)(version&gt;=1.2.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.cm ;version=1.2.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.felix.ipojo.handlers.providedservice)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.ipojo.handlers.providedservice
    
    
    
    
    
    
    
    
    
    
     ;version=1.4.0
  </require>
</resource>
<resource id='org.apache.geronimo.specs.geronimo-jpa_1.0_spec/1.1.2' presentationname='JPA 1.0' symbolicname='org.apache.geronimo.specs.geronimo-jpa_1.0_spec' uri='../org/apache/geronimo/specs/geronimo-jpa_1.0_spec/1.1.2/geronimo-jpa_1.0_spec-1.1.2.jar' version='1.1.2'>
  <description>
    The Java Persistence Architecture (JPA) 1.0 api (part of ejb
    
    
    
    
    
    
    
    
    
     3.0 spec)
  </description>
  <documentation>
    http://geronimo.apache.org/maven/specs/geronimo-jpa_1.0_spec/1.1.2
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    55062
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='JPA 1.0'/>
    <p n='symbolicname' v='org.apache.geronimo.specs.geronimo-jpa_1.0_spec'/>
    <p n='version' t='version' v='1.1.2'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.persistence.spi'/>
    <p n='uses' v='javax.persistence,javax.sql'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='javax.persistence'/>
    <p n='uses' v='javax.persistence.spi'/>
    <p n='version' t='version' v='1.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence.spi)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence.spi ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
</resource>
<resource id='org.apache.felix.prefs/1.0.4' presentationname='Apache Felix Preferences Service' symbolicname='org.apache.felix.prefs' uri='../org/apache/felix/org.apache.felix.prefs/1.0.4/org.apache.felix.prefs-1.0.4.jar' version='1.0.4'>
  <description>
    Implementation of the OSGi Preferences Service Specification
    
    
    
    
    
    
    
    
     1.1
  </description>
  <documentation>
    http://www.apache.org/
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    42519
  </size>
  <category id='osgi'/>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Felix Preferences Service'/>
    <p n='symbolicname' v='org.apache.felix.prefs'/>
    <p n='version' t='version' v='1.0.4'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.osgi.service.prefs'/>
    <p n='version' t='version' v='1.1.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.felix.prefs'/>
    <p n='uses' v='org.osgi.service.prefs'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.felix.prefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.felix.prefs
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.framework)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.framework
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.log)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.log ;version=1.3.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.service.prefs)(version&gt;=1.1.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.service.prefs ;version=1.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.osgi.util.tracker)(version&gt;=1.3.0))' multiple='false' name='package' optional='false'>
    Import package org.osgi.util.tracker ;version=1.3.0
  </require>
</resource>
<resource id='org.apache.geronimo.ext.tomcat.tribes/6.0.20.0' presentationname='Apache Geronimo Tomcat fork: Tribes' symbolicname='org.apache.geronimo.ext.tomcat.tribes' uri='../org/apache/geronimo/ext/tomcat/tribes/6.0.20.0/tribes-6.0.20.0.jar' version='6.0.20.0'>
  <description>
    Mavenized tomcat build
  </description>
  <documentation>
    http://geronimo.apache.org/maven/external/tribes/6.0.20.0/tribes
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    244048
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Geronimo Tomcat fork: Tribes'/>
    <p n='symbolicname' v='org.apache.geronimo.ext.tomcat.tribes'/>
    <p n='version' t='version' v='6.0.20.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.tribes.transport.bio.util'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.catalina.tribes,org.apache.catalina.tribes.group'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.tribes.transport'/>
    <p n='uses' v='org.apache.catalina.tribes.io,org.apache.catalina.tribes,org.apache.juli.logging,org.apache.catalina.tribes.util,org.apache.catalina.tribes.transport.nio'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.tribes.util'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.catalina.tribes.membership,org.apache.catalina.tribes,org.apache.catalina.tribes.group'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.tribes.tipis'/>
    <p n='uses' v='org.apache.catalina.tribes.io,org.apache.catalina.tribes,org.apache.juli.logging,org.apache.catalina.tribes.membership,org.apache.catalina.tribes.util,org.apache.catalina.tribes.group'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.tribes.membership'/>
    <p n='uses' v='org.apache.catalina.tribes.util,org.apache.juli.logging,org.apache.catalina.tribes,org.apache.catalina.tribes.transport,org.apache.catalina.tribes.io'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.tribes.io'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.catalina.tribes.util,org.apache.catalina.tribes.membership,org.apache.catalina.tribes'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.tribes.group.interceptors'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.catalina.tribes.membership,org.apache.catalina.tribes,org.apache.catalina.tribes.group,org.apache.catalina.tribes.io,org.apache.catalina.tribes.transport.bio.util,org.apache.catalina.tribes.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.tribes'/>
    <p n='uses' v='org.apache.catalina.tribes.group,org.apache.catalina.tribes.io,org.apache.catalina.tribes.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.tribes.transport.nio'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.catalina.tribes.transport,org.apache.catalina.tribes.util,org.apache.catalina.tribes.io,org.apache.catalina.tribes'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.tribes.group'/>
    <p n='uses' v='org.apache.catalina.tribes,org.apache.catalina.tribes.transport,org.apache.juli.logging,org.apache.catalina.tribes.membership,org.apache.catalina.tribes.util,org.apache.catalina.tribes.transport.nio,org.apache.catalina.tribes.io,org.apache.catalina.tribes.group.interceptors'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.tribes.transport.bio'/>
    <p n='uses' v='org.apache.catalina.tribes.transport,org.apache.juli.logging,org.apache.catalina.tribes.io,org.apache.catalina.tribes,org.apache.catalina.tribes.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.tribes)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.tribes
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.tribes.group)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.tribes.group
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.tribes.group.interceptors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.tribes.group.interceptors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.tribes.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.tribes.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.tribes.membership)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.tribes.membership
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.tribes.tipis)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.tribes.tipis
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.tribes.transport)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.tribes.transport
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.tribes.transport.bio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.tribes.transport.bio
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.tribes.transport.bio.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.tribes.transport.bio.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.tribes.transport.nio)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.tribes.transport.nio
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.tribes.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.tribes.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.juli.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.juli.logging
  </require>
</resource>
<resource id='org.apache.geronimo.ext.tomcat.util/6.0.20.0' presentationname='Apache Geronimo Tomcat fork: Util' symbolicname='org.apache.geronimo.ext.tomcat.util' uri='../org/apache/geronimo/ext/tomcat/util/6.0.20.0/util-6.0.20.0.jar' version='6.0.20.0'>
  <description>
    Mavenized tomcat build
  </description>
  <documentation>
    http://geronimo.apache.org/maven/external/util/6.0.20.0/util
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    280896
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Geronimo Tomcat fork: Util'/>
    <p n='symbolicname' v='org.apache.geronimo.ext.tomcat.util'/>
    <p n='version' t='version' v='6.0.20.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tomcat.util.digester'/>
    <p n='uses' v='org.xml.sax,org.apache.juli.logging,org.apache.tomcat.util,javax.xml.parsers,org.xml.sax.helpers,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tomcat.util.buf'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.tomcat.util.res'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tomcat.util.modeler'/>
    <p n='uses' v='javax.management,org.apache.juli.logging,javax.management.modelmbean,org.apache.tomcat.util.modeler.modules'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tomcat.util.http.fileupload'/>
    <p n='uses' v='javax.servlet.http,javax.servlet'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tomcat.util.http.mapper'/>
    <p n='uses' v='javax.naming,org.apache.juli.logging,org.apache.tomcat.util.buf,javax.naming.directory'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tomcat.util.modeler.modules'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.tomcat.util.modeler,org.w3c.dom,org.apache.tomcat.util,org.apache.tomcat.util.digester,javax.management,javax.xml.transform,javax.management.loading'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tomcat.util.res'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tomcat.util.collections'/>
    <p n='uses' v='org.apache.tomcat.util.buf,org.apache.juli.logging'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tomcat.util.http'/>
    <p n='uses' v='org.apache.tomcat.util.buf,org.apache.juli.logging,org.apache.tomcat.util.res,org.apache.tomcat.util.collections'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tomcat.util'/>
    <p n='uses' v='org.apache.juli.logging,org.xml.sax,javax.xml.transform.dom,javax.xml.parsers,org.w3c.dom,javax.xml.transform.stream,javax.xml.transform'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tomcat.util.log'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tomcat.util.threads'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.tomcat.util.res'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.loading)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.loading
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.directory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.directory
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.dom
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.juli.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.juli.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.buf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.buf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.collections)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.collections
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.digester)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.digester
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.http.fileupload)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.http.fileupload
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.http.mapper)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.http.mapper
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.log
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.modeler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.modeler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.modeler.modules)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.modeler.modules
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.res)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.res
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.threads)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.threads
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.geronimo.ext.tomcat.catalina/6.0.20.0' presentationname='Apache Geronimo Tomcat fork: Catalina' symbolicname='org.apache.geronimo.ext.tomcat.catalina' uri='../org/apache/geronimo/ext/tomcat/catalina/6.0.20.0/catalina-6.0.20.0.jar' version='6.0.20.0'>
  <description>
    Mavenized tomcat build
  </description>
  <documentation>
    http://geronimo.apache.org/maven/external/catalina/6.0.20.0/catalina
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    1745785
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Geronimo Tomcat fork: Catalina'/>
    <p n='symbolicname' v='org.apache.geronimo.ext.tomcat.catalina'/>
    <p n='version' t='version' v='6.0.20.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.users'/>
    <p n='uses' v='org.apache.catalina,org.apache.tomcat.util.digester,org.xml.sax,org.apache.catalina.util,org.apache.juli.logging,javax.naming,javax.naming.spi'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.manager.util'/>
    <p n='uses' v='org.apache.catalina,javax.servlet.http,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.manager.host'/>
    <p n='uses' v='javax.servlet.http,org.apache.catalina,javax.servlet,org.apache.catalina.util,org.apache.catalina.core,org.apache.catalina.startup,javax.management,org.apache.tomcat.util.modeler'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.juli.logging,javax.naming.directory,org.apache.catalina.connector,org.apache.tomcat.util.http.mapper,org.apache.catalina.util,org.apache.catalina.deploy,org.apache.catalina.core'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.naming.java'/>
    <p n='uses' v='javax.naming,javax.naming.spi,org.apache.naming'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.coyote.ajp'/>
    <p n='uses' v='org.apache.tomcat.util.buf,org.apache.coyote,org.apache.juli.logging,org.apache.tomcat.util.res,org.apache.tomcat.jni,org.apache.tomcat.util.net,org.apache.tomcat.util.http,org.apache.tomcat.util.modeler,javax.management'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.loader'/>
    <p n='uses' v='org.apache.catalina,org.apache.juli.logging,javax.naming.directory,org.apache.naming.resources,org.apache.catalina.util,org.apache.naming,javax.naming,org.apache.tomcat.util,org.apache.tomcat.util.modeler,javax.management,org.apache.catalina.core,javax.servlet'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.naming.resources'/>
    <p n='uses' v='javax.naming.directory,javax.naming,org.apache.naming,org.apache.tomcat.util.http,org.apache.juli.logging,org.apache.catalina.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tomcat.jni'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jk.server'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.tomcat.util.buf,javax.management,org.apache.tomcat.util.modeler,org.apache.jk.core,org.apache.coyote,org.apache.tomcat.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.util'/>
    <p n='uses' v='org.apache.tomcat.util.buf,org.w3c.dom,org.apache.catalina.core,org.apache.juli.logging,javax.naming.directory,javax.naming,org.apache.naming.resources,org.apache.catalina,javax.servlet,org.apache.tomcat.util.digester,org.xml.sax'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tomcat.util.net'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.tomcat.util.res,org.apache.tomcat.jni,org.apache.tomcat.util.threads,org.apache.tomcat.util,org.apache.tomcat.util.net.jsse,javax.net.ssl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.naming'/>
    <p n='uses' v='javax.naming,org.apache.juli.logging,javax.naming.spi,javax.management'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.core'/>
    <p n='uses' v='org.apache.tomcat.util.buf,org.apache.tomcat.util.http.mapper,org.apache.juli.logging,org.apache.catalina,javax.naming.directory,org.apache.naming.resources,org.apache.catalina.util,org.apache.catalina.deploy,javax.servlet,javax.naming,org.apache.catalina.security,javax.servlet.http,org.apache.catalina.connector,org.apache.tomcat.util.log,org.apache,org.apache.tomcat.jni,javax.management,org.apache.tomcat.util.modeler,javax.ejb,javax.annotation,javax.persistence,javax.xml.ws,org.apache.naming.factory,org.apache.naming,org.apache.catalina.loader,org.apache.catalina.startup,org.apache.catalina.session,org.apache.catalina.valves,org.apache.catalina.realm,org.apache.tomcat.util.modeler.modules'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.manager'/>
    <p n='uses' v='org.apache.catalina.manager.util,org.apache.catalina,javax.servlet.http,javax.servlet,org.apache.tomcat.util.http.fileupload,org.apache.catalina.util,org.apache.tomcat.util.modeler,javax.management,org.apache.catalina.core,javax.naming'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jk.apr'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.jk.core'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.startup'/>
    <p n='uses' v='org.apache.juli.logging,javax.management,org.apache.catalina.security,org.apache.tomcat.util.digester,org.xml.sax,org.apache.tomcat.util,org.apache.catalina,org.apache.catalina.core,org.apache.catalina.util,org.apache.catalina.loader,org.apache.catalina.connector,org.apache.coyote,org.apache.catalina.deploy,javax.servlet,javax.xml.parsers,org.apache.tomcat.util.log,org.apache.tomcat.util.modeler,javax.naming.directory,javax.naming,javax.annotation,javax.annotation.security'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.security'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.catalina.startup,org.apache.catalina,javax.servlet.http,javax.servlet,org.apache.catalina.util,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.valves'/>
    <p n='uses' v='org.apache.catalina.connector,javax.servlet.http,org.apache.catalina,org.apache.coyote,org.apache.juli.logging,javax.servlet,org.apache.catalina.util,org.apache.catalina.session,org.apache.catalina.core,javax.management'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.realm'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.catalina,javax.management,org.apache.catalina.util,org.apache.catalina.core,javax.naming,org.apache.naming,javax.sql,javax.security.auth.callback,org.apache.tomcat.util.digester,javax.security.auth.login,org.apache.catalina.deploy,javax.security.auth.spi,org.apache.catalina.connector,javax.security.auth,javax.naming.directory,org.apache.tomcat.util.buf,org.xml.sax,javax.servlet.http,org.apache.tomcat.util.modeler'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.ssi'/>
    <p n='uses' v='javax.servlet,javax.servlet.http,org.apache.catalina.util,org.apache.tomcat.util.http,org.apache.catalina.connector'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.coyote.http11'/>
    <p n='uses' v='org.apache.tomcat.util.buf,org.apache.juli.logging,org.apache.tomcat.util.res,org.apache.tomcat.jni,org.apache.tomcat.util.net,org.apache.coyote,org.apache.coyote.http11.filters,org.apache.tomcat.util.http,javax.management,org.apache.tomcat.util.modeler,org.apache.tomcat.util.net.jsse,javax.net.ssl,org.apache.tomcat.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jk.config'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.catalina,org.apache.catalina.deploy,javax.servlet,org.w3c.dom,org.xml.sax,javax.xml.parsers,org.apache.tomcat.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.naming.factory'/>
    <p n='uses' v='javax.naming,javax.naming.spi,org.apache.naming,javax.mail,javax.mail.internet'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.tomcat.util.net.jsse'/>
    <p n='uses' v='org.apache.tomcat.util.net,javax.net.ssl,org.apache.juli.logging,org.apache.tomcat.util.res,javax.security.cert'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jk.core'/>
    <p n='uses' v='org.apache.coyote,org.apache.tomcat.util.modeler,javax.management,org.apache.tomcat.util.buf,org.apache.juli.logging,org.apache.jk.common'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.deploy'/>
    <p n='uses' v='org.apache.catalina.util,org.apache.catalina'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.mbeans'/>
    <p n='uses' v='org.apache.tomcat.util.modeler,javax.management,org.apache.tomcat.util,javax.management.modelmbean,org.apache.catalina.connector,org.apache.catalina.deploy,org.apache.catalina,org.apache.juli.logging,javax.naming,org.apache.catalina.valves,org.apache.catalina.realm,org.apache.catalina.loader,org.apache.catalina.core,org.apache.catalina.startup,org.apache.catalina.session,org.apache.catalina.authenticator,javax.servlet,javax.naming.directory'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.coyote'/>
    <p n='uses' v='org.apache.tomcat.util.net,org.apache.tomcat.util.buf,org.apache.tomcat.util.http,javax.management'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.coyote.http11.filters'/>
    <p n='uses' v='org.apache.tomcat.util.buf,org.apache.coyote.http11,org.apache.coyote'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.coyote.memory'/>
    <p n='uses' v='org.apache.tomcat.util.buf,org.apache.coyote'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jk.common'/>
    <p n='uses' v='org.apache.tomcat.util.threads,org.apache.jk.core,org.apache.jk.apr,org.apache.juli.logging,org.apache.coyote,org.apache.tomcat.util.modeler,javax.management,org.apache.tomcat.util.buf,org.apache.tomcat.util.http,org.apache.tomcat.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.servlets'/>
    <p n='uses' v='javax.servlet.http,javax.servlet,org.apache.catalina.util,javax.naming.directory,org.apache.naming.resources,javax.xml.transform,javax.naming,javax.xml.transform.stream,org.apache.catalina.connector,org.apache.catalina,org.apache.tomcat.util.http,org.xml.sax,org.w3c.dom,javax.xml.parsers'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.naming.resources.jndi'/>
    <p n='uses' v='org.apache.naming.resources'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.session'/>
    <p n='uses' v='org.apache.catalina,org.apache.juli.logging,javax.servlet,org.apache.catalina.util,javax.servlet.http,javax.management,org.apache.tomcat.util.modeler,org.apache.catalina.core,org.apache.catalina.security'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.connector'/>
    <p n='uses' v='javax.servlet.http,org.apache.catalina,javax.servlet,org.apache.catalina.util,org.apache.juli.logging,javax.management,org.apache.tomcat.util.modeler,org.apache.coyote,org.apache.catalina.core,org.apache.tomcat.util.http.mapper,org.apache.tomcat.util,org.apache.tomcat.util.buf,org.apache.tomcat.util.http,org.apache.tomcat.util.net,org.apache.catalina.security,javax.naming,org.apache.tomcat.util.res,org.apache.catalina.realm,javax.security.auth'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.authenticator'/>
    <p n='uses' v='org.apache.catalina,org.apache.juli.logging,javax.servlet.http,org.apache.catalina.valves,org.apache.catalina.deploy,org.apache.catalina.util,javax.servlet,org.apache.catalina.connector,org.apache.tomcat.util.buf,org.apache.tomcat.util.http,org.apache.coyote'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.annotation)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.annotation.security)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.annotation.security ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.ejb)(version&gt;=3.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.ejb ;version=3.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.mail.internet)(version&gt;=1.4.0))' multiple='false' name='package' optional='false'>
    Import package javax.mail.internet ;version=1.4.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.management.modelmbean)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management.modelmbean
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.directory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.directory
  </require>
  <require extend='false' filter='(&amp;(package=javax.naming.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.net.ssl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.net.ssl
  </require>
  <require extend='false' filter='(&amp;(package=javax.persistence)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.persistence ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.callback)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.callback
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.login)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.login
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.auth.spi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.auth.spi
  </require>
  <require extend='false' filter='(&amp;(package=javax.security.cert)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.security.cert
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.sql)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.sql
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.transform.stream)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.transform.stream
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.ws)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.ws ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.authenticator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.authenticator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.connector)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.connector
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.deploy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.deploy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.loader)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.loader
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.manager)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.manager
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.manager.host)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.manager.host
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.manager.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.manager.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.mbeans)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.mbeans
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.realm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.realm
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.servlets)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.servlets
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.session)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.session
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.ssi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.ssi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.startup)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.startup
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.users)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.users
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.valves)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.valves
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.coyote)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.coyote
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.coyote.ajp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.coyote.ajp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.coyote.http11)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.coyote.http11
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.coyote.http11.filters)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.coyote.http11.filters
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.coyote.memory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.coyote.memory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jk.apr)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jk.apr
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jk.common)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jk.common
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jk.config)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jk.config
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jk.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jk.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jk.server)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jk.server
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.juli.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.juli.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.naming.factory)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.naming.factory
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.naming.java)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.naming.java
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.naming.resources)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.naming.resources
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.naming.resources.jndi)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.naming.resources.jndi
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.jni)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.jni
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.buf)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.buf
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.digester)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.digester
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.http)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.http
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.http.fileupload)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.http.fileupload
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.http.mapper)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.http.mapper
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.log)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.log
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.modeler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.modeler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.modeler.modules)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.modeler.modules
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.net)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.net
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.net.jsse)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.net.jsse
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.res)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.res
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.threads)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.threads
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
</resource>
<resource id='org.apache.geronimo.ext.tomcat.jasper/6.0.20.0' presentationname='Apache Geronimo Tomcat fork: Jasper' symbolicname='org.apache.geronimo.ext.tomcat.jasper' uri='../org/apache/geronimo/ext/tomcat/jasper/6.0.20.0/jasper-6.0.20.0.jar' version='6.0.20.0'>
  <description>
    Mavenized tomcat build
  </description>
  <documentation>
    http://geronimo.apache.org/maven/external/jasper/6.0.20.0/jasper
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    556004
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Geronimo Tomcat fork: Jasper'/>
    <p n='symbolicname' v='org.apache.geronimo.ext.tomcat.jasper'/>
    <p n='version' t='version' v='6.0.20.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper'/>
    <p n='uses' v='org.apache.juli.logging,javax.servlet,org.apache.jasper.xmlparser,org.apache.jasper.compiler,org.apache.tools.ant,org.apache.tools.ant.util,org.apache.jasper.servlet,javax.servlet.jsp.tagext'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.el'/>
    <p n='uses' v='javax.el,javax.servlet.jsp.el'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.tagplugins.jstl'/>
    <p n='uses' v='javax.servlet,javax.servlet.http,org.apache.jasper,javax.servlet.jsp'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.runtime'/>
    <p n='uses' v='javax.servlet.jsp.tagext,javax.servlet.jsp,javax.servlet.http,javax.servlet,org.apache.jasper.compiler,org.apache,org.apache.jasper.el,javax.servlet.jsp.el,org.apache.el,javax.el,org.apache.jasper.util,org.apache.jasper,org.apache.juli.logging,org.apache.jasper.security'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.compiler.tagplugin'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.tagplugins.jstl.core'/>
    <p n='uses' v='org.apache.jasper.compiler.tagplugin,org.apache.jasper.tagplugins.jstl'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.security'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.jasper'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.xmlparser'/>
    <p n='uses' v='org.apache.jasper.compiler,org.apache.jasper,org.apache.juli.logging,org.xml.sax,javax.xml.parsers,org.w3c.dom'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.compiler'/>
    <p n='uses' v='org.apache.tools.ant,org.apache.jasper,org.apache.juli.logging,org.apache.tools.ant.taskdefs,org.apache.tools.ant.types,javax.servlet.jsp.tagext,org.apache.jasper.servlet,org.xml.sax,org.apache.jasper.runtime,javax.el,org.apache.jasper.xmlparser,org.eclipse.jdt.internal.compiler.env,org.eclipse.jdt.internal.compiler.classfmt,org.eclipse.jdt.core.compiler,org.eclipse.jdt.internal.compiler,org.eclipse.jdt.internal.compiler.problem,javax.servlet,org.xml.sax.ext,javax.xml.parsers,org.xml.sax.helpers,javax.servlet.jsp,org.apache.jasper.security,org.apache.jasper.el,javax.servlet.jsp.el,org.apache.el,org.apache.jasper.compiler.tagplugin,org.apache.el.lang'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.jasper.servlet'/>
    <p n='uses' v='org.apache.jasper,javax.servlet,org.apache.juli.logging,javax.servlet.http,org.apache,org.apache.jasper.security,org.apache.jasper.compiler,org.apache.jasper.runtime,javax.servlet.jsp.tagext'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.el)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.el ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.el)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp.el ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.jsp.tagext)(version&gt;=2.1.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.jsp.tagext ;version=2.1.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.xml.parsers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.xml.parsers
  </require>
  <require extend='false' filter='(&amp;(package=org.apache)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.el)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.el
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.el.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.el.lang
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jasper
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.compiler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jasper.compiler
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.compiler.tagplugin)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jasper.compiler.tagplugin
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.el)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jasper.el
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.runtime)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jasper.runtime
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.security)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jasper.security
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.servlet)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jasper.servlet
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.tagplugins.jstl)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jasper.tagplugins.jstl
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.tagplugins.jstl.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jasper.tagplugins.jstl.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jasper.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.jasper.xmlparser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.jasper.xmlparser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.juli.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.juli.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.taskdefs)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.taskdefs
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.types)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.types
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tools.ant.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tools.ant.util
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.core.compiler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.core.compiler
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.compiler
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.classfmt)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.compiler.classfmt
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.env)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.compiler.env
  </require>
  <require extend='false' filter='(&amp;(package=org.eclipse.jdt.internal.compiler.problem)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.eclipse.jdt.internal.compiler.problem
  </require>
  <require extend='false' filter='(&amp;(package=org.w3c.dom)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.w3c.dom
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.ext)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.ext
  </require>
  <require extend='false' filter='(&amp;(package=org.xml.sax.helpers)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.xml.sax.helpers
  </require>
</resource>
<resource id='org.apache.geronimo.ext.tomcat.shared/6.0.20.0' presentationname='Apache Geronimo Tomcat fork: Shared' symbolicname='org.apache.geronimo.ext.tomcat.shared' uri='../org/apache/geronimo/ext/tomcat/shared/6.0.20.0/shared-6.0.20.0.jar' version='6.0.20.0'>
  <description>
    Mavenized tomcat build
  </description>
  <documentation>
    http://geronimo.apache.org/maven/external/shared/6.0.20.0/shared
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    8172
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Geronimo Tomcat fork: Shared'/>
    <p n='symbolicname' v='org.apache.geronimo.ext.tomcat.shared'/>
    <p n='version' t='version' v='6.0.20.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache'/>
    <p n='uses' v='javax.naming'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.naming)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.naming
  </require>
  <require extend='false' filter='(&amp;(package=org.apache)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache
  </require>
</resource>
<resource id='org.apache.geronimo.ext.tomcat.jasper-el/6.0.20.0' presentationname='Apache Geronimo Tomcat fork: Jasper-el' symbolicname='org.apache.geronimo.ext.tomcat.jasper-el' uri='../org/apache/geronimo/ext/tomcat/jasper-el/6.0.20.0/jasper-el-6.0.20.0.jar' version='6.0.20.0'>
  <description>
    Mavenized tomcat build
  </description>
  <documentation>
    http://geronimo.apache.org/maven/external/jasper-el/6.0.20.0/jasper-el
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    111644
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Geronimo Tomcat fork: Jasper-el'/>
    <p n='symbolicname' v='org.apache.geronimo.ext.tomcat.jasper-el'/>
    <p n='version' t='version' v='6.0.20.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.el.util'/>
    <p n='uses' v='org.apache.el.lang,javax.el'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.el.parser'/>
    <p n='uses' v='org.apache.el.lang,javax.el,org.apache.el.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.el.lang'/>
    <p n='uses' v='org.apache.el.util,javax.el,org.apache.el.parser,org.apache.el'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.el'/>
    <p n='uses' v='org.apache.el.util,org.apache.el.lang,javax.el,org.apache.el.parser'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.el)(version&gt;=1.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.el ;version=1.0.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.el)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.el
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.el.lang)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.el.lang
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.el.parser)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.el.parser
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.el.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.el.util
  </require>
</resource>
<resource id='org.apache.geronimo.ext.tomcat.catalina-ha/6.0.20.0' presentationname='Apache Geronimo Tomcat fork: Catalina-ha' symbolicname='org.apache.geronimo.ext.tomcat.catalina-ha' uri='../org/apache/geronimo/ext/tomcat/catalina-ha/6.0.20.0/catalina-ha-6.0.20.0.jar' version='6.0.20.0'>
  <description>
    Mavenized tomcat build
  </description>
  <documentation>
    http://geronimo.apache.org/maven/external/catalina-ha/6.0.20.0/catalina-ha
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    139439
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Geronimo Tomcat fork: Catalina-ha'/>
    <p n='symbolicname' v='org.apache.geronimo.ext.tomcat.catalina-ha'/>
    <p n='version' t='version' v='6.0.20.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.ha.session'/>
    <p n='uses' v='org.apache.catalina,org.apache.juli.logging,org.apache.catalina.ha,org.apache.catalina.tribes.io,org.apache.catalina.tribes.tipis,org.apache.catalina.tribes,org.apache.catalina.session,org.apache.catalina.util,org.apache.catalina.ha.tcp,org.apache.catalina.core,org.apache.catalina.realm,javax.servlet.http,javax.servlet,org.apache.catalina.valves,org.apache.catalina.connector'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.ha'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.catalina,org.apache.catalina.tribes,org.apache.catalina.util,org.apache.catalina.tribes.io,org.apache.tomcat.util.digester,javax.servlet.http'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.ha.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.ha.context'/>
    <p n='uses' v='org.apache.catalina.core,javax.servlet,org.apache.catalina.util,org.apache.catalina,org.apache.juli.logging,org.apache.catalina.ha,org.apache.catalina.tribes.tipis,org.apache.catalina.tribes'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.ha.deploy'/>
    <p n='uses' v='org.apache.catalina,org.apache.juli.logging,org.apache.catalina.ha,org.apache.tomcat.util.modeler,javax.management,org.apache.catalina.tribes'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.ha.authenticator'/>
    <p n='uses' v='org.apache.juli.logging,org.apache.catalina,org.apache.catalina.ha,org.apache.catalina.tribes,org.apache.catalina.authenticator'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.catalina.ha.tcp'/>
    <p n='uses' v='org.apache.catalina,org.apache.juli.logging,org.apache.catalina.valves,org.apache.catalina.util,org.apache.catalina.core,org.apache.catalina.ha.session,javax.servlet,org.apache.catalina.ha,org.apache.catalina.connector,org.apache.catalina.tribes,org.apache.catalina.tribes.group.interceptors,org.apache.catalina.ha.util,org.apache.catalina.tribes.group,org.apache.tomcat.util'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=javax.management)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package javax.management
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=javax.servlet.http)(version&gt;=2.5.0))' multiple='false' name='package' optional='false'>
    Import package javax.servlet.http ;version=2.5.0
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.authenticator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.authenticator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.connector)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.connector
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.core)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.core
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.ha)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.ha
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.ha.authenticator)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.ha.authenticator
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.ha.context)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.ha.context
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.ha.deploy)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.ha.deploy
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.ha.session)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.ha.session
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.ha.tcp)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.ha.tcp
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.ha.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.ha.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.realm)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.realm
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.session)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.session
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.tribes)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.tribes
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.tribes.group)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.tribes.group
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.tribes.group.interceptors)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.tribes.group.interceptors
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.tribes.io)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.tribes.io
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.tribes.tipis)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.tribes.tipis
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.catalina.valves)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.catalina.valves
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.juli.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.juli.logging
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.digester)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.digester
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.tomcat.util.modeler)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.tomcat.util.modeler
  </require>
</resource>
<resource id='org.apache.geronimo.ext.tomcat.juli/6.0.20.0' presentationname='Apache Geronimo Tomcat fork: Juli' symbolicname='org.apache.geronimo.ext.tomcat.juli' uri='../org/apache/geronimo/ext/tomcat/juli/6.0.20.0/juli-6.0.20.0.jar' version='6.0.20.0'>
  <description>
    Mavenized tomcat build
  </description>
  <documentation>
    http://geronimo.apache.org/maven/external/juli/6.0.20.0/juli
  </documentation>
  <license>
    https://www.apache.org/licenses/LICENSE-2.0.txt
  </license>
  <size>
    26519
  </size>
  <capability name='bundle'>
    <p n='manifestversion' v='2'/>
    <p n='presentationname' v='Apache Geronimo Tomcat fork: Juli'/>
    <p n='symbolicname' v='org.apache.geronimo.ext.tomcat.juli'/>
    <p n='version' t='version' v='6.0.20.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.juli.logging'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <capability name='package'>
    <p n='package' v='org.apache.juli'/>
    <p n='version' t='version' v='0.0.0'/>
  </capability>
  <require extend='false' filter='(&amp;(package=org.apache.juli)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.juli
  </require>
  <require extend='false' filter='(&amp;(package=org.apache.juli.logging)(version&gt;=0.0.0))' multiple='false' name='package' optional='false'>
    Import package org.apache.juli.logging
  </require>
</resource>
</repository>
